当在OSX 10.8上使用安装了Apple开发人员站点的独立命令行工具包(无Xcode)执行gem install jekyll时,遇到以下错误:




xcrun cc -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin12.0 -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin12.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -fno-common -arch i386 -arch x86_64 -g -Os -pipe -fno-common -DENABLE_DTRACE  -fno-common  -pipe -fno-common   -c porter.c
xcrun: Error: failed to exec real xcrun. (No such file or directory)

gcc已安装:
$ which cc
/usr/bin/cc

xcrun的查找路径已设置:
xcode-select -print-path
/usr/bin

但是无论我尝试使用哪种参数,xcrun都将始终返回


man xcrun读取为“当使用名称xcrun调用xcrun时,标志-log和-verbose是有用的调试辅助。标志-no-cache可用于绕过缓存查找。”但这似乎没有任何作用:唯一的输出仍然是上面的…

解决方案:,遵循Ned Deily的以下建议,我已将xcrun替换为Shell脚本以仅调用给定参数:
#!/bin/bash
$@

最佳答案

不幸的是,至少在上一次我玩过它时,我发现您真的不能仅将xcrun包与Command Line Tools一起使用。显然,它不是为该用例设计的。独立软件包是Xcode 4的一项最新创新。如果您要安装的产品确实取决于xcrun,则可能需要安装完整的Xcode.app发行版才能解决该问题。这样,或修改发行版的Makefile等,使其不使用xcrun。或者,可能(未经测试)创建一些目录和/或符号链接(symbolic link)来伪造xcrun,以为您已安装Xcode.app-杂乱无章的hack。

08-16 20:20