如何修复构建gtk2hs软件包时出现的“外部声明中不可接受的结果类型:CULong”错误?

时间:2013-03-14 03:15:10

标签: haskell gtk2hs

当尝试使用ghc-7.6.1编译gtk Haskell包时,我收到以下错误(当尝试构建pango时,其中一个依赖项,但如果我尝试手动安装它们,它也会出现在其他依赖包中):

[ 1 of 14] Compiling Graphics.Rendering.Pango.Types ( dist/build/Graphics/Rendering/Pango/Types.hs, dist/build/Graphics/Rendering/Pango/Types.o )

Graphics/Rendering/Pango/Types.chs:249:1:
    Unacceptable result type in foreign declaration: CULong
    When checking declaration:
      foreign import ccall unsafe "static pango_context_get_type" pango_context_get_type
        :: CULong

我以前安装了旧版本的gtk2hs,因此在升级过程中会出现这种情况。

如何解决错误?

1 个答案:

答案 0 :(得分:5)

如果您安装了旧版本的gtk2hs-buildtools,则会出现此问题,这些版本不适用于较新版本的ghc。解决方案是在继续更新之前更新gtk2hs-buildtools包:

sudo cabal install --reinstall gtk2hs-buildtools