dim*_*ios 3 xcode archiving static-libraries ios xcode5
我有两个项目,每个项目构建一个静态库,以及另一个使用两个静态库的项目.
两个静态库中的一个构建正常.另一个没有,原因是它的公共头文件在自定义shell脚本运行之前没有复制到build文件夹.
以下是对所发生情况的演示:
SampleA(工作的那个)
Compile MyClass1.cpp ...
Compile MyClass2.cpp ...
Libtool /Users/user/Library/Developer/XCode/DerivedData/.....
Libtool /Users/user/Library/Developer/XCode/DerivedData/.....
Libtool /Users/user/Library/Developer/XCode/DerivedData/.....
Create universal binary libSampleA.a ...
Copy SampleA.h ...in /Users/user/....
Copy MyClass1.h ...in /Users/user/....
Copy MyClass2.h ...in /Users/user/....
Run custom shell script 'Prepare Framework'
Stripping libSampleA.a
--- Build complete
Run Code Online (Sandbox Code Playgroud)
SampleB(不起作用的那个)
Compile OtherClass1.cpp ...
Compile OtherClass2.cpp ...
Libtool /Users/user/Library/Developer/XCode/DerivedData/.....
Libtool /Users/user/Library/Developer/XCode/DerivedData/.....
Libtool /Users/user/Library/Developer/XCode/DerivedData/.....
Create universal binary libSampleB.a ...
// >>>>> NO HEADER FILES ARE COPIED <<<<<<
Run custom shell script 'Prepare Framework'
--- Build fails (header folder does not exist)
Run Code Online (Sandbox Code Playgroud)
我当前的设置是一个包含所有3个项目的工作空间,但我曾经为每个静态库创建了一个带有一个嵌套项目的项目.我在两种设置中都有同样的问题.
更多信息
"$(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts/include"和/或"$(PROJECT_TEMP_DIR)/../UninstalledProducts/include"两个库之间的一个区别是SampleB(不构建的那个)包括SampleA的各种头文件.没有编译器或链接器错误,只是我描述的构建结束时的错误.
来源
我用于创建库以及尝试解决问题的一些来源:
那么,你知道在构建过程中是什么触发了要复制或不复制的头文件吗?
我怀疑即使一个头文件被添加到复制标题阶段或复制文件阶段,至少应该复制这个.但事实证明,这不是发生的事情,至少在我的情况下.
| 归档时间: |
|
| 查看次数: |
5404 次 |
| 最近记录: |