如何在macports下安装gfortran并将其与cmake一起使用?

时间:2011-02-14 10:50:44

标签: cmake macports gfortran

希望有人可以帮助我。我需要编译一些代码。我在/ opt / local /中安装了我需要的所有macports。除了gFortran之外,它的工作原理应该如何。我收到这个错误:

ld: library not found for -lgfortran
collect2: ld returned 1 exit status
make[2]: *** [vigranumpy/private/graph/tws/svs.dylib] Error 1
make[1]: *** [vigranumpy/private/graph/tws/CMakeFiles/svs.dir/all] Error 2
make: *** [all] Error 2

我希望所有内容都安装在/ opt / local /中,因为我不想触摸系统(/ usr /)。 gFortran不适用于macports。您可以使用gcc46作为变体进行安装。但是如果我使用gcc46而不是默认的编译器,那么之前的代码需要编译。 我该如何解决这个问题?

亲切的问候

1 个答案:

答案 0 :(得分:2)

有关如何使用其他编译器的信息,请参阅CMake FAQ:

要使用macports中的gfortran作为fortran编译器,你应该:

export FC=/opt/local/bin/gfortran
export CC=/opt/local/bin/gcc
export CXX=/opt/local/bin/g++

......在致电CMake之前。然后,在设置了这样的环境变量调用CMake之后,它将缓存CMakeCache.txt文件中的编译器路径,因此对于后续运行,您不再需要设置环境变量。

对于混合语言(C,C ++,Fortran)项目,重要的是编译器都能很好地相互配合。

此建议仅适用于“Unix Makefile”生成器。我不知道有任何人通过Xcode与CMake一起使用fortran。