1

我正在尝试更新 glfw 包以在 mac 上使用 glfw 2.7。问题在于有一个新的可可端口引入了“m”文件。

所以我想只对这些文件使用 -xc 选项,但我不知道如何让它只对这些“m”文件进行操作。

我的 cabal 文件的相关部分:

if os(darwin)
  include-dirs: glfw/lib/cocoa
  frameworks:   AGL Cocoa OpenGL
  cc-options:   -msse2 
  ghc-options:  -x c                  -- **** global not just local.
  c-sources:
    glfw/lib/cocoa/cocoa_enable.m
    glfw/lib/cocoa/cocoa_fullscreen.m
    glfw/lib/cocoa/cocoa_glext.m
    glfw/lib/cocoa/cocoa_init.m
    glfw/lib/cocoa/cocoa_joystick.m
    glfw/lib/cocoa/cocoa_thread.m
    glfw/lib/cocoa/cocoa_time.m
    glfw/lib/cocoa/cocoa_window.m

有什么想法可以解决这个阴谋集团问题吗?

如果您想对其进行测试,我的源代码位于https://github.com/iaefai/glfw-haskell 。

4

2 回答 2

0

没有办法通过 .cabal 标志来做到这一点。您可能需要手动进行预处理阶段(例如 cabal makefile 模式或配置模式)。

于 2011-04-08T22:49:13.200 回答
0

请改用GLFW-b绑定。我与 GLFW-b 的作者合作进行了所有必要的更改,以使 2.7 在 OSX 上运行。它甚至可以在 GHCI 中使用。

你可以cabal install nehe-tuts看到它的工作演示。

于 2011-06-25T00:14:01.103 回答