Xcode WorkSpace的使用与编译

 

1.静态库
 
1.1 见雨松的 IOS 入门开发之使用Xcode4制作静态库详解(五)
 
1.2 静态库使用。
我们在1.1最后生成了.a文件,但是这并不完美。
 
1.2.1
我们选中静态库

1.2.2
在build时,静态库有多种configuration,我们一般调试都使用simulator,如果你使用simulator编译的.a文件在工程中是红色,你也选择Device编译,重新在工程中导入(Xcode bug!!!).


1.3 静态库配置
如果我们想要在workspace中动态编译静态库和工程,我们需要对两者进行配置。
静态库中,
我们在静态库->targets->build setting->install directory,键入:$(BUILT_PRODUCTS_DIR),我们这里指定静态库生成的.公共文件路径。
我们在静态库->targets->build setting->other linker flags 键入:-Objc,这里我们可以让工程导入所有的静态库公共文件(包括类别category),详见解决ios静态库中的类别(category)在工程中不能使用
 
1.4 设置公共文件夹
我们在静态库->targets->build phases->copy files,点击“+”,添加公共的.h头文件(如果你想这个文件在工程中被使用),注:各个xcode版本不同,添加公共文件的方法不同.
 
2.我们的工程
 
2.1 工程中导人.a文件见1.1
 
2.2 我们在工程中->targets->build setting-> user header search paths,键入,$(BUILT_PRODUCTS_DIR),我们的工程可以在此目录,即静态生成的公共文件目录查找文件。
同样,我们在工程中->targets->build setting->other linker flags 键入:-Objc,这里和1.3类似。
 
3 命令行编译workspace,测试打包
3.1 在1.2.2时,我们要选择静态库,导航栏,product->edit scheme,如下图所示:


 
选择info->build configuration->release,这里我们选择发布编译。这样我们在命令行编译时,可以在指定路径找到release的.a文件。


 
3.2 在终端中找到.xcworkspace的路径,执行下列命令 xcodebuild -workspace xxx.xcworkspace -scheme yyy -configuration  Release
 
3.3 在$(BUILT_PRODUCTS_DIR)目录下release-iphoneos文件下找到.app。
注:可在,xcode-preferences->locations中指定$(BUILT_PRODUCTS_DIR)的位置。
详见:xcode4的环境变量,Build Settings参数,workspace及联编设置
图3-1
 
图3-2

 
图3-3


 
参考文章:
http://erlangprogram.com/use-xcode4-workspace
https://coderwall.com/p/rv2lgw
http://blog.carbonfive.com/2011/04/04/using-open-source-static-libraries-in-xcode-4/
http://www.cnblogs.com/xiaodao/archive/2012/03/28/2422091.html
posted on 2013-09-30 11:26  我靠是时候那个了  阅读(2428)  评论(0编辑  收藏  举报