2013-11-23 219 views
1

我已经从opensource.apple.com下载Chess.app。当我运行xcodebuild install我得到一个错误:XCode的建筑内发生时尝试编译时发生错误Chess.app

fatal error: 'CoreFoundation/CFLogUtilities.h' file not found 
#import <CoreFoundation/CFLogUtilities.h> 
     ^1 error generated. 

同样的错误。

我已经看过/System/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers/,当然,CFLogUtilities.h不存在。我发现它可以从Apple's Open Source Website下载,但是我觉得如果它在与OS捆绑在一起的应用程序中被链接,它应该默认安装,或者至少在安装XCode +命令行工具之后安装。

我是否必须手动下载和打包头文件才能构建项目,或者我是否错过了某些东西?

+0

[这里是该文件](http://www.opensource.apple.com/source/CF/CF-550/CFLogUtilities.h),如果它有帮助的话。 – Undo

+0

@Undo我应该在哪里放置文件?我将它移入CoreFoundation框架文件夹,但仍然收到相同的错误。我应该设置一些特殊的权限吗? –

回答

0

我不知道你使用的是什么操作系统版本,但是在10.9上编译它只需将CFLogUtilities.h更改为CoreFoundation.h

您还需要构建CrashReporterClient.a库并将其添加到项目中,或者将其从目标的“链接库”构建设置中删除。

由于缺少iconcompiler,因此shell脚本将失败,但是您可以将该脚本行注释为#并运行得很好。我将把它作为一个练习让你了解如何最好地恢复应用程序图标。

+0

我正在寻找一种方法来从脚本中完成所有这些(下载,解压缩,编译),而且我不确定您在脚本中可能提供的建议。你有能力在你的机器上编译应用程序吗? –

+0

@JoshWhittington是的,在完成我所说的之后,我成功编译并从我的10.9机器上运行。 –

+0

在XCode项目中,它将该库显示为“可选”。有什么办法强制构建设置遵守这个偏好?无论是在Xcode或xcodebuild? –