Xcode中添加Copy Files Build Phase选项
Mac OS X上的绝大部分程序都使用Sparkle来作为程序的自动升级工具。利用Sparkle,用户无需对升级过程进行干涉,只需跟着升级指示做就可以了。
但是他需要增加一个Build Phase,在编译程序的时候将Framework复制到运行文件中。然而,xcode5已经把界面改动的很大,原来的操作界面、截图的都不管用了。
在工程的Build Phase中,默认的只有这4个
没有Sparkle需要的Copy Files。。。没有这个选项的话,将Sparkle复制进来就会报错
2013-11-06 15:35:23.647 PCBetaClient[10555:303] Unknown class 'SUUpdater', using 'NSObject' instead. Encountered in Interface Builder file at path /Users/shiniv/Library/Developer/Xcode/DerivedData/Client-gixzhwxuqxextacqrqcvwrtbglcr/Build/Products/Debug/Client.app/Contents/Resources/MainMenu.nib. 2013-11-06 15:35:23.648 Client[10555:303] Could not connect the action checkForUpdates: to target of class NSObject
找了大半天,在网上也一直在搜索关于xcode5添加Framework的,居然一个都么有。。唉
对比了原来写的工程,居然有Copy Files 选项 !!!
最后找了下菜单栏,!@#¥%……& 原来TMD苹果在xcode5中将他放进菜单栏里面去了。。
将他选上,Destination设置为Framework,点+号添加Sparkle,如图
编译通过!!xcode5 真TM坑
PS:
Sparkle添加进去后,有可能会出现一下错误
dyld: Library not loaded: @loader_path/../Frameworks/Sparkle.framework/Versions/A/Sparkle Referenced from: /Users/shiniv/Library/Developer/Xcode/DerivedData/PCBetaClient-gixzhwxuqxextacqrqcvwrtbglcr/Build/Products/Debug/Client.app/Contents/MacOS/Client Reason: image not found
将Link Binary With Libraries的中的Sparkle选项从required 改为Optional就好了~~
【声明】本文 Xcode中添加Copy Files Build Phase选项 为柠之漠然原创文章,转载请注明出自
枫之落叶
并保留本文有效链接:https://blog.shiniv.com/2013/11/xcode-add-copy-files-build-phase/ , 转载请保留本声明!