如何教Xcode 5创建一个合适的静态库公共头文件夹路径?

时间:2013-10-06 13:17:21

标签: xcode static-libraries xcode5

我在这篇tutorial中读到,头文件的静态库输出路径应该像这样结构化,例如:

Build/Products/Debug-iphoneos/YourLibraryName

然后您可以使用<YourLibraryName/YourLibraryName.h>作为导入。

我按照所有步骤配置了我的静态库项目的目标(在静态库xcode项目中)公共标题文件夹路径YourLibraryName而不是/usr/local/include }。该更改适用于所有阶段,即调试和发布。

好的,然后我清理了所有目标并删除了Finder中的构建文件夹并再次构建。但没有变化。 Xcode不断将头文件复制到

Build/Products/Debug-iphoneos/include/YourLibraryName

它不想跳过“include”文件夹。 我也尝试更改Private头文件夹路径,但也没有效果。这是Xcode中的错误还是有解决方法?

我的目标是,我想为我的常用实用程序类创建一个静态库xcode项目。然后将其拖入我使用它们的所有应用程序中,并将框架包含在带有尖括号的Apple框架中。

1 个答案:

答案 0 :(得分:4)

(免责声明:我还没有切换到Xcode 5,但我在4.x的经验可能仍适用于此。)

检查目标是否有复制文件复制标题构建阶段。 (在项目导航器中选择项目项,然后选择目标,最后选择构建阶段选项卡。)在新项目中,Xcode模板现在包含复制文件来代替复制标题,而您引用的文章可能会假设后者。

公共标题文件夹路径私有标题文件夹路径设置仅由复制标题使用。 复制文件在构建阶段的配置中具有正确的目标路径,默认为$(BUILT_PRODUCTS_DIR)/include/${PRODUCT_NAME},这正是您的标头最终的位置。

如果是这种情况,简单的解决方案就是只更改复制文件构建阶段中的路径。 (删除路径的“include /”部分。)或者,您可以切换到复制标题构建阶段,但由于存档操作存在问题,显然不建议将其用于静态库项目