首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Haskell:无法生成webkitgtk3库

Haskell:无法生成webkitgtk3库
EN

Stack Overflow用户
提问于 2013-12-04 07:43:40
回答 1查看 221关注 0票数 1

在过去,编译haskell库有很多技巧,但是很难找到。

无法构建webkitgtk3库。

错误:

代码语言:javascript
复制
cabal install webkitgtk3
Resolving dependencies...
[1 of 2] Compiling SetupWrapper     ( /tmp/webkitgtk3-0.12.5-28865/webkitgtk3-0.12.5/SetupWrapper.hs, /tmp/webkitgtk3-0.12.5-28865/webkitgtk3-0.12.5/dist/setup/SetupWrapper.o )

/tmp/webkitgtk3-0.12.5-28865/webkitgtk3-0.12.5/SetupWrapper.hs:118:28: Warning:
    In the use of `configCompiler'
    (imported from Distribution.Simple.Configure):
    Deprecated: "'configCompiler' is deprecated. Use 'configCompilerEx' instead."
[2 of 2] Compiling Main             ( /tmp/webkitgtk3-0.12.5-28865/webkitgtk3-0.12.5/Setup.hs, /tmp/webkitgtk3-0.12.5-28865/webkitgtk3-0.12.5/dist/setup/Main.o )
Linking /tmp/webkitgtk3-0.12.5-28865/webkitgtk3-0.12.5/dist/setup/setup ...
[1 of 2] Compiling Gtk2HsSetup      ( Gtk2HsSetup.hs, dist/setup-wrapper/Gtk2HsSetup.o )
[2 of 2] Compiling Main             ( SetupMain.hs, dist/setup-wrapper/Main.o )
Linking dist/setup-wrapper/setup ...
Configuring webkitgtk3-0.12.5...
Building webkitgtk3-0.12.5...
Preprocessing library webkitgtk3-0.12.5...
gtk2hsC2hs: Errors during expansion of binding hooks:

./Graphics/UI/Gtk/WebKit/Types.chs:1100: (column 12) [ERROR] 
  >>> Unknown identifier!
  Cannot find a definition for `WebKitDOMBarInfo' in the header file.
./Graphics/UI/Gtk/WebKit/Types.chs:1865: (column 12) [ERROR] 
  >>> Unknown identifier!
  Cannot find a definition for `WebKitDOMMemoryInfo' in the header file.

Failed to install webkitgtk3-0.12.5
cabal: Error: some packages failed to install:
webkitgtk3-0.12.5 failed during the building phase. The exception was:
ExitFailure 1

有什么方法可以解决这个错误吗?

EN

回答 1

Stack Overflow用户

发布于 2013-12-04 10:27:06

正如评论中提到的,它为我正确地安装了,所以我只能猜测你的机器出了什么问题,但你给出的错误消息确实有一些线索……

重要的线条似乎就在这里

代码语言:javascript
复制
./Graphics/UI/Gtk/WebKit/Types.chs:1100: (column 12) [ERROR] 
  >>> Unknown identifier!
  Cannot find a definition for `WebKitDOMBarInfo' in the header file.
./Graphics/UI/Gtk/WebKit/Types.chs:1865: (column 12) [ERROR] 
  >>> Unknown identifier!
  Cannot find a definition for `WebKitDOMMemoryInfo' in the header file.

我通过键入"cabal unpack webkitgtk3“并将cd‘in放入子目录下载了webkitgtk3的源代码。查看Graphics/UI/Gtk/WebKit/Types.chs的1100行,我看到了以下内容

代码语言:javascript
复制
{#pointer *WebKitDOMBarInfo as BarInfo foreign newtype #} deriving (Eq,Ord)

Haskell ".chs“文件用于将Haskell绑定到c头文件。这一行告诉编译器构建工具根据webkit c头文件中找到的结构创建一个数据对象,称为WebKitDOMBarInfo。

只有几个地方可以检查-

  1. 你有合适的头文件吗?在我的机器上,在一个名为/usr/include/webkitgtk-3.0/webkit/WebKitDOMBarInfo.h.的文件中定义了WebKitDOMBarInfo结构(在您的机器上位置可能不同,但文件应该具有相同的基名,如果您有文件,请验证结构是否已定义(实际上,结构称为_WebKitDOMBarInfo,不带下划线的版本是gtk2hsC2hs的最新版本。)这是一个将c头文件转换成haskell代码的程序。较旧的版本可能会被某些功能搞混(可能像typedef那样)。要升级到最新版本的gtk2hsC2hs.
  2. Verify,请参阅How to upgrade gtk2hsC2hs?,确保您的系统已正确设置以查找头文件。

同样,因为它对我有效,我不知道这些东西是否能解决问题,但是如果你看看这些东西并在这里发布结果,我们可以再次迭代。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20364031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档