遇到最新版本的OSX和Canopy问题。我需要mpi4py并且从来没有遇到过使用以前的操作系统编译它的问题。然而,有了10.9,他们似乎已经从gcc转移到了clang,我无法为我的生活编译mpi4py。它在蟒蛇中很好地编译,但不是用Canopy编译的。有人有运气吗?
答案 0 :(得分:1)
(Enthought Support here)
与OS X 10.9 Mavericks一起发布的最新版本的XCode(版本5)已经删除了对gcc
的支持,因此gcc
实际上不再是GNU编译器集合,而是符号链接到clang
编译器。
用户仍然希望为他们的项目访问C编译器,例如使用Cython构建C扩展,在使用符号链接gcc
时(或直接使用clang
)通常不会遇到任何问题),因为clang
使用与Apple之前的gcc
编译器相同的LLVM后端和库。
但是,如果要构建一个C ++库(通过clang++
),稍后将链接到Python扩展,或者如果要构建使用C ++库的Python扩展,则需要使用较旧的库(libstdc ++,而不是libc ++的clang++
默认值)通过这些编译器/链接器标志:-stlib=libstdc++ -mmacosx-version-min=10.6
由于某些用户可能更喜欢,仍然可以在OSX 10.9上安装和使用Xcode 4.6.3,但请注意,这些开发人员工具不包含10.9 SDK。
此信息也可以在我们的知识库中找到:https://support.enthought.com/entries/26184115-GCC-Clang-and-Cython-in-OS-X-10-9-Mavericks