workspace 相当于 vc 当中的 dsw 功能,可以管理工程,主程序和库(.a)。
我的操作环境是xcode 6.3 版本。
环境变量参考:https://developer.apple.com/library/mac/documentation/DeveloperTools/Reference/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref.html
1. 打开xcode 工程 -》 FIle -> NEW -> workspace 创建出一个空workspace.
2. 点击右键 Add Files to... 把现有的工程 .xcodeproj 文件加入到这个workspace中。
3. "再点击空白处" 注意是空白的地方,再添加其它的库,这样就不会加到第一个库文件下边了。
4. 点库工程的 Targets-> Build Phases -> Copy Files
把subpath 当中的 “include/$(PRODUCT_NAME)” 改为 “../include/$(PRODUCT_NAME)”
也就是 /Users/gamefy/Library/Developer/Xcode/DerivedData/ 工程/ Build/Products/ 这个目录了,不是里边的debug-iphones 目录,目的是以后模拟器和真机都可以用这个目录。
5. 主程序工程 Targets -> Build Settings -> search path-> Header Search Paths -> 增加 一项 “$(BUILD_DIR)/include” 找库的头文件
6. 主程序工程 Targets -> Build Phases -> Link Binary with Library -> Add -> 在框中的 workspace 下边的库,添加到你的工程中,这个库就可以找到了。
7. 主程序当中调用库 #import "mylib.h" 或 #import "mylib/mylib.h" 然后使用这个库就可以了。
a. 注意的是第4个里边的目录是在xcode -> Prefances -> Locations -> Locations 页里边的项,默认最好不要改,否则输出的地方错了,不好找。
b. 在workspace 中添加项目是在空白处增加的,我开始一加就加到了第一个工程下边了,后来看apples 官网才看出来差别。
c. workspace 上边可以选择工程 就在( 设备前边的位置像一个tag 的东西 )开始没看到,但可惜没有vc 的全编译之类的操作,但也是可以用的。
d. 有时工程不会自动全编译,就要关掉再打开单独工程编译,这个很奇怪,感觉像是workspace 的bug,有人知道,告诉我一下哦。