我正试图在我的运行Big Sur的M1 Mac上编译一个名为Kraken的包。
MacOS编译失败: clang变得不安。我安装了来自Homebrew的gcc (两次)和$ brew医生说我准备好了。
我现在的路径是:
/usr/local/opt/llvm/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/opt/homebrew/bin.
gcc-11 etc文件位于/opt/homebrew/bin
但是/usr/local/bin不存在!
MacOS不会更新gcc的命令别名:
$ rm gcc
然后
$ ln -s /opt/homebrew/bin/ gcc -11 gcc
不返回错误
但是后来
$哪一位,gcc
返回
/usr/bin/gcc
我迷路了,发现这个编译器指向已经一团糟了;这里有什么新的见解吗?我看过一堆条目,但我尝试过的都不起作用。
希望这是一个愚蠢的新手(我)的问题,我感谢你能给我的任何帮助。
迈克尔
发布于 2021-09-02 15:07:46
Homebrew避免链接与系统二进制文件同名的二进制文件,如gcc(appleclang)。ln -s /opt/homebrew/bin/gcc-11 /opt/homebrew/bin/gcc或告诉您的配置器通过CC=等显式使用gcc-11,如果使用C++,则对g++-11也是如此。
如果是./configure脚本,可以尝试调用CC=/opt/homebrew/bin/gcc-11 CXX=/opt/homebrew/bin/g++-11 ./configure
如果是cmake,则使用cmake .. -DCMAKE_C_COMPILER=/opt/homebrew/bin/gcc-11 -DCMAKE_CXX_COMPILER=/opt/homebrew/gcc++-11
此外,请尝试查看自制软件gcc链接指向ls -l /opt/homebrew/bin/gcc的位置
https://stackoverflow.com/questions/68989061
复制相似问题