我尝试升级到El-Capitan和Xcode 7.0,现在gfortran还没有工作。每次我运行gfortran时,我都会收到google搜索似乎无法解决的错误,所以我要求堆栈溢出:
我正在尝试编译一个最小的示例程序:
program hello
print *, "Hello World"
end program hello
当我运行gfortran test.f
gfortran: warning: couldn’t understand kern.osversion ‘15.0.0
ld: library not found for -lgcc_s.10.4
collect2: error: ld returned 1 exit status
我并不担心这个警告,但是ld的错误让我很烦恼。 / usr / lib文件夹中有libgcc_s.10.4.tbd
但gfortran似乎没有使用它。
任何人都可以帮我解决这个问题,因为我想用gfortran编译一些库吗?
更多信息:正在运行gfortran -v
输出
gfortran: warning: couldn’t understand kern.osversion ‘15.0.0
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-apple-darwin12.2.0/4.8.0/lto-wrapper
Target: x86_64-apple-darwin12.2.0
Configured with: ../gcc-4.8-20120930/configure --enable languages=c++,fortran
Thread model: posix
gcc version 4.8.0 20120930 (experimental) (GCC)
答案 0 :(得分:3)
你拥有的gfortran版本(安装在/usr/local
中的4.8)不是苹果公司与Xcode一起分发的GCC版本(afaik他们在转换到llvm之前从未进入过新版本的GCC版本,没有Fortran前端。在el capitan上用Xcode 7分发的gcc版本标识为:
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.0.0 (clang-700.0.72)
Target: x86_64-apple-darwin15.0.0
Thread model: posix
您的版本来自其他地方,并且已经足够大,无法了解x86_64-apple-darwin15.0.0
目标。您需要更新该编译器以使其工作gfortran
。 macports和homebrew都可以在OS X el capitan上轻松安装各种版本的gcc / gfortran,我建议使用其中一个来安装gcc。或者,您可以在之前跟踪用于安装gcc 4.8的任何内容,看看它们是否提供了el capitan的更新。