麻烦在Mac OS X上构建Trilinos(科学计算库)

时间:2012-03-29 09:11:49

标签: c++ macos fortran scientific-computing trilinos

我正在尝试在Mac OS X 10.6.8上构建Trilinos库,基本上遵循了this page和Trilinos中包含的CMake Quickstart document的说明。

为了使用CMake构建它,说明书建议设置一个目录,例如/ usr / local / trilinos,在其中创建一个./do-configure脚本并运行它。我的剧本是:

EXTRA_ARGS=$@

cmake \
    -D CMAKE_BUILD_TYPE:STRING=DEBUG \
    -D Trilinos_ENABLE_TESTS:BOOL=ON \
    $EXTRA_ARGS \
    ${TRILINOS_HOME}

运行此脚本会启动配置,直到出现错误。可以在此处找到详细输出:http://pastebin.com/abrEghD7

我认为信息的相关部分是:

-- Verifying Fortran/CXX Compiler Compatibility - Failed
CMake Error at /usr/local/Cellar/cmake/2.8.7/share/cmake/Modules/FortranCInterface.cmake:284 (message):
  The Fortran compiler:

    /usr/local/bin/gfortran

  and the CXX compiler:

    /usr/bin/c++

  failed to compile a simple test project using both languages.  The output
  was:

但是,我无法解释为什么脚本会指责Fortran和C ++编译器。我用“Hello World”测试了Fortran编译器,并使用OS X的C ++编译器来完成整个项目。据我所知,两个编译器都能正常工作。

谁能猜到可能出错的地方?

编辑:似乎是一些兼容性问题,而不是个别编译器的问题。

2 个答案:

答案 0 :(得分:1)

当我编写paraview时。我将我的CXX编译器设置为g++,而不是像cmake那样设置标准c++。因为否则我会看到类似的错误。

答案 1 :(得分:1)

你从哪里得到gfortran?大多数来源的构建都不支持像-arch这样的特定于mac的扩展,这些扩展可能会在尝试组合它们时遇到问题。或者它们可能只是不同的版本(如果你的gfortran比你的g ++更新,他们可能试图引入不兼容的运行时版本)。

在数字python社区(很大程度上依赖于fortran),OS X的推荐来源是来自here的二进制文件。这与XCode gcc版本匹配,并支持Mac特定扩展。