build settings以些參數
1.Installation Directory:安裝路徑
靜態庫編譯時,在Build Settings中Installation Directory設置“$(BUILT_PRODUCTS_DIR)”
Skip Install設為YES
Installation Directory默認為/usr/local/lib
因為Build Location默認時,.a文件會放在很長(比如:/Users/xxx/Library/Developer/Xcode/DerivedData/xxxProgram
dalrvzehhtesxdfqhxixzafvddwe/Build/Products/Debug-iPhoneos)的路徑下,或是我們target指定的路徑
Skip Install如果是NO,可能會被安裝到默認路徑/usr/local/lib
2.Public Headers Folder Path:對外公開頭文件路徑
設為“include”(具體的頭文件路徑為:$(BUILT_PRODUCTS_DIR)/include/xx.h)
在最終文件.a同級目錄下生成一個include目錄
默認:/usr/local/include
Public Headers Folder Path這個路徑就是使用這lib的某工程需要依賴的外部頭文件.導入這路徑後,#include/import "xx.h"才能看到
3.User Header Search Paths:依賴的外部頭文件搜索路徑
設置為“$(BUILT_PRODUCTS_DIR)/include”
和2中路徑對應
4.Per-configuration Build Products Path:最終文件路徑
比如設為“../app”,就會在工程文件.xcodeproj上一層目錄下的app目錄裡,創建最終文件
默認為$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
等於$(BUILT_PRODUCTS_DIR)
5.Per-configuration Intermediate Build Files Path:臨時中間文件路徑
默認為:$(PROJECT_TEMP_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
6.Code Signing Identity:真機調試的證書選擇
選一個和Bundle identifier相對應的證書
Library Search Paths:庫搜索路徑
Architectures:架構,設為 armv6 或 armv7
Valid Architectures:應用框架,可以設為 armv6、 armv7 或i386
Product Name:工程文件名,默認為$(TARGET_NAME)
Info.plist File:info文件路徑
Build Variants:默認為normal
Other Linker Flags:其他鏈接標簽
設為“-ObjC”
當導入的靜態庫使用了類別,需要設為-ObjC
iOS Deployment Target:ios部署對象
比如可以選擇設為,ios3到ios5的一種版本
Prefix Header:預編頭文件(比如:UtilLib/UtilLib-Prefix.pch)
Precompile Prefix Header:設為“Yes”,表示允許加入預編譯頭
OpenGL ES
iPhone:iPhone 3G以下(包括iPhone 3G)版本設備只支持OpenGL ES1.1,iPhone 3GS以上(包括iPhone 3GS)版本設備既支持OpenGL ES1.1,也支持OpenGL ES2.0。
iPad:iPad所有版本設備既支持OpenGL ES1.1,也支持OpenGL ES2.0。
iPod Touch:iPod Touch2代以下(包括iPod Touch2代)版本設備只支持OpenGL ES1.1,iPod Touch3代以上(包括iPod Touch3代)版本設備既支持OpenGL ES1.1,也支持OpenGL ES2.0,但8GB版的iPod Touch3代不支持OpenGL ES2.0。
armv6和armv7,armv7s
armv6:iPhone 2G/3G,iPod 1G/2G
armv7:iPhone 3GS/4/4s,iPod 3G/4G,iPad 1G/2G/3G
armv7s:iPhone5