有没有办法把编译器从clang改成gcc?我已经安装了命令行工具,并试图使用终端来编译,而不是xcode本身。
gc0ot86w1#
MacPorts用途:
port select --set gcc <group>, <version>
. .,如this answer中所详述。
对于自制用途:
Brew链接和brew取消链接您喜欢使用的软件包版本。请注意,一个“未链接”的包仍然可以从/usr/local/opt//安装和使用,只是不在默认路径中。
roejwanj2#
您可以使用任何端口系统(例如MacPorts,http://www.macports.org/)安装gcc
34gzjxbg3#
如果我理解正确的话,你想在终端上使用干净的gcc编译器而不是系统提供的gcc编译器进行编译。我已经通过设置到GCC的符号链接解决了这个问题:
ln -s /usr/local/bin/g++-${VERSION} /usr/local/bin/g++ ln -s /usr/local/bin/gcc-${VERSION} /usr/local/bin/gcc
GCC安装不应该提供这种链接(可能有很多不同版本的GCC,那么应该链接哪个?),但/usr/bin/gcc存在。因此,如果你向系统请求GCC,它将运行这个,在我的情况下是AppleClang14.sth。如果/usr/local/bin在/usr/bin/gcc之前,添加这些链接并检查PATH之后,一切都应该正常。它甚至适用于我的GitHub Actions MacOS工作。
3条答案
按热度按时间gc0ot86w1#
MacPorts用途:
. .,如this answer中所详述。
对于自制用途:
Brew链接和brew取消链接您喜欢使用的软件包版本。请注意,一个“未链接”的包仍然可以从/usr/local/opt//安装和使用,只是不在默认路径中。
roejwanj2#
您可以使用任何端口系统(例如MacPorts,http://www.macports.org/)安装gcc
34gzjxbg3#
如果我理解正确的话,你想在终端上使用干净的gcc编译器而不是系统提供的gcc编译器进行编译。
我已经通过设置到GCC的符号链接解决了这个问题:
GCC安装不应该提供这种链接(可能有很多不同版本的GCC,那么应该链接哪个?),但/usr/bin/gcc存在。因此,如果你向系统请求GCC,它将运行这个,在我的情况下是AppleClang14.sth。
如果/usr/local/bin在/usr/bin/gcc之前,添加这些链接并检查PATH之后,一切都应该正常。
它甚至适用于我的GitHub Actions MacOS工作。