如何在mac上编译GCC,这样编译后的可执行文件可以在早期版本的OS X上运行?

Bau*_*ghn 5 macos gcc c++11 osx-tiger

我正在尝试构建一个使用C++ 0x功能的程序(Dwarf Fortress),这些功能在最新的Leopard版本的XCode中得不到很好的支持.由于使用GCC 4.5也有显着的速度提升,我们决定建立自己的.

但是,这导致生成的可执行文件无法在Tiger上运行,引用了libc中缺少的符号.据推测,GCC是针对Leopard SDK构建的,而不是已安装的Tiger SDK,这是合理但令人讨厌的.我如何让它与老虎的对抗?

Ben*_*itz 2

您需要将 -mmacosx-version-min=10.5 传递给 ld,这将告诉它链接到 libc 中的适当符号。