我可以建立调试就好了。 我三重检查,静态库包含在项目的构建阶段设置。 我也尝试过其他的东西像头包括路径和这样无济于事。
当我尝试建立试飞的IPA,我得到一个错误: #import <MBProgressHUD/MBProgressHUD.h>
我已经能够前建立一个IPA,但它并没有实现/使用前MBProgressHUD静态库。
我能包括头和代码文件手动,而不是静态链接它,但我更知道是怎么回事。
谢谢。
PS -我用给出的“静态库”的说明https://github.com/jdg/MBProgressHUD
默认情况下,Xcode中提出构建产品分为$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
这相当于build/Release-iphoneos
的实例。 这是该产品获得建成和在那里头将会被复制到该文件夹。
当我们复制发布配置说一个叫“应用商店”,现在的Xcode构建到build/App Store-iphoneos
。 问题是,真的,静态库正在建立与他们的Release配置,进入发行版文件夹。
由于App Store中的配置(对我来说,至少)是唯一在那里轻松地配置配置文件之间切换,我的解决方案是为App Store Config中的“每配置构建产品路径”更改为$(BUILD_DIR)/Release$(EFFECTIVE_PLATFORM_NAME)
使App Store的配置还建立到发行版文件夹。
随着另一个SO问题的帮助( https://stackoverflow.com/a/10159481/143225 )我能得到头文件包含。
显然,归档构建过程比调试构建过程有些不同。 通过添加"$(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts"
到“用户头搜索路径”建设置它成功地建造。
我还是想明白为什么这是行不通的,因为我希望它。 我有一个项目是建立在汽车预感包含头文件用于调试和发布版本,但不知何故没有存档版本。 这很奇怪,因为我认为档案建立从Xcode的方案设置调试或释放的设置继承。
任何额外的信息是值得欢迎的。
丹尼尔·塔尔的回答会起作用,但的,而不是改变“每个配置构建产品路径”,可以更新静态库项目的配置包括一个“应用程序商店”的配置或其他任何命名配置您的应用目标是构建对,这是Release配置的副本。 通过这种方式,静态库将输出它的库和头/ include文件到相应的目录,这将是在“每个配置构建产品路径中使用的$(BUILD_DIR)/ $(配置)$(EFFECTIVE_PLATFORM_NAME)宏来解决“; 和walllaaaaa ......公共图书馆头现在可以正确地被Xcode中解决。 所以总结起来,如果你有一个“应用程序商店”命名的应用程式的目标和你对其中出口头一个静态库链接配置,确保静态库项目还包括“应用商店”的配置,你会是一个快乐的人。