问题描述
在 Mac OS (Catalina) 上
命令 gfortran -o file file.f
通常给出一个可执行的“文件”
但是现在我的环境已损坏,我得到
>ld: file too small (length=0) file '/var/folders/dz/qjjbfdzs663fd6jmv27hcz300000gn/T//ccZ1MxJv.o' for architecture x86_64
我重新安装了 Xcode 和 gfortran(版本 12... 和 10...)以及“命令行工具”并删除了 Library/Developer/DerivedData,但问题仍然存在。这个网站上有一些建议,这个问题涉及 Xcode“Clean”,但我通常不会显式调用 Xcode(我在终端窗口中工作,发出命令行。)我没有看到如何将 Xclass 定向到我的“项目”本身就是为了“清洁”。
我也找不到上面的文件:它没有在 ...T/ 目录中看到,或者(T// 无论如何)。
对于它的价值 - 尝试编译、链接和 ld 任何 .f 程序现在都会给出这个致命错误,每个都有不同的 ...T..// 文件。
解决方法
总的来说,我发现从即用型安装程序中使用 XCode
和 gfortran
真的很棘手。我不是说它总是坏的,但很多时候我都遇到过某种问题。
相反,我建议从源代码安装所有内容。看看这里:
在 GNU
上安装基于 macOS
的链
https://www.owsiak.org/building-opencoarrays-on-macos-everything-from-the-sources-gcc-9-2-0/
然后,您可以使用模块轻松维护它
https://www.owsiak.org/modules-as-a-convenient-way-of-choosing-build-chain-on-macos/
我知道与 brew
或其他一些工具相比,它更耗时,但在使用从源代码构建的整个链时,我从未遇到过编译、链接等方面的问题。