由于我更新了Mavericks我的C应用程序,在我的机器上用clang编译,无法在Lion机器上执行(是的,有些人没有更新)。它抛出
分段错误:11错误
我读过有关stdlib选项in this thread但它似乎只适用于clang ++而不适用于普通的clang。铿锵有类似的选择吗?我在谷歌搜索了--stdlib=libstdc
,但所有搜索结果都是--stdlib=libstdc++
答案 0 :(得分:3)
要为OS X 10.8(Lion)编译应用程序,您必须设置“部署目标”。 clang的相应命令行选项是
-mmacosx-version-min=10.8
您可能还希望将SDK设置为10.8,以避免使用仅在10.9中可用的库函数:
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
答案 1 :(得分:0)
我不确定问题的意图,但Lion实际上是10.7, Mountain Lion 是10.8。显然,如果你的目标是Lion(10.7),你不会想要将部署目标设置为10.8。在这方面,先前的评论和回答都是相互矛盾的。
*注意:我无法对他们发表评论,因为我没有足够的代表!