今天尝试在MacOS上使用GCC,用homebrew安装gcc@11之后在CLion里Build一个程序,但是在链接阶段报错,错误信息里有类似于ld: Assertion failed: (_file->_atomsArrayCount == computedAtomCount && "more atoms allocated than expected"), function parse, file macho_relocatable_file.cpp, line 2061.
的一行。
根据stackoverflow的一个回答,问题是出在了Xcode 14.0的链接器有Bug,目前来说需要降级到Xcode 13.4才行。所以解决方法就是:
下载Xcode 13.4的Command Line Tools并安装;执行sudo xcode-select --switch /Library/Developer/CommandLineTools
来切换版本。然后GCC就可以用了。
相关github issue:gcc-12的issue、homebrew的discussion。