【问题标题】:How to install gfortran under macports and use it with cmake?如何在macports下安装gfortran并与cmake一起使用?
【发布时间】:2011-06-26 20:23:59
【问题描述】:

希望有人能帮帮我。我需要编译一些代码。我在 /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 不适用于 macport。您可以使用 gcc46 作为变体安装它。但是如果我使用 gcc46 而不是默认编译器,那么之前的代码需要编译。 我该如何解决?

亲切的问候

【问题讨论】:

  • 请复制粘贴您的CMakeLists.txt

标签: cmake macports gfortran


【解决方案1】:

请参阅 CMake 常见问题解答,了解如何使用不同的编译器:

要将 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 Makefiles”生成器。我不知道有谁通过 Xcode 和 CMake 一起使用 fortran。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-22
    • 2015-07-03
    • 1970-01-01
    • 1970-01-01
    • 2020-08-13
    • 1970-01-01
    • 2011-07-31
    • 2015-05-19
    相关资源
    最近更新 更多