我遇到的问题是gcc(和系列)似乎没有正确设置。我有一台10.7.4机器,我刚刚安装了Xcode(来自应用程序商店)。我之前没有在这台机器上进行过任何开发。
在Xcode中工作似乎工作正常。我可以构建和编译没有问题。但是,尝试执行gcc命令行失败。
首先,我的gcc不在我的路上......没什么大不了的。我找到它然后跑:
/Applications/Xcode.app/Contents/Developer/usr/bin/gcc -dynamiclib -fno-common -o s.dylib s.c
(我正在研究一些带有某些功能的lib ...)。无论如何,它失败了。
s.c:1:19: error: stdio.h: No such file or directory
s.c:2:20: error: stdlib.h: No such file or directory
s.c:3:20: error: string.h: No such file or directory
惊喜!哈哈,我在机器上搜索了stdio.h,我无法在任何地方找到它。由于我已经退出OSX游戏了一段时间,我假设我错过了一些东西 -
基本上我希望能够继续使用Xcode,但我希望能够在命令行上构建C / C ++ / etc,并将所有依赖项(.h)放在正确的位置。
有什么想法吗?
答案 0 :(得分:2)
从命令行运行编译器有两种主要方法:命令行工具包和xcrun。
xcrun
特别好,如果您偶尔需要这个。只需在开始时粘贴“xcrun”,就像你使用sudo一样:
xcrun gcc -dynamiclib -fno-common -o s.dylib s.c
这将找到正确的gcc版本并设置所需的目录等。您可以使用--sdk
指定特定的SDK。
如果您经常这样做,请下载并安装命令行工具包(Xcode> Open Developer Tool>更多工具......;它也可以在首选项>下载中使用)。这将在/ usr。
中安装所有内容的完整副本答案 1 :(得分:0)
如果使用10.8,xcrun可能还不够。 查看clang文档,我发现您需要包含系统根目录,因为您没有标准库中的库但是在Xcode中。
使用:
xcrun gcc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
或:
xcrun clang -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk