寫在最前面:ios
若是沒有必須選擇eXosip的理由,那麼它毫不應該是你的第一選擇,本人更傾向於Pjsip,不管是架構,仍是其詳實的文檔支持,亦或是多個開源參考實例,都能讓你更快的學習運用它。架構
-----------------------------------------------------------------------------------------------------app
首先打開終端,進入osip2或者eXoisp的根目錄,而後進行詳細配置以生成makefile。學習
具體的參數,能夠經過$ ./configure --help 查看「詳細」說明google
iPhone模擬器:spa
1.osip2code
$ ./configure CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang CFLAGS="-O2 -m32 -mios-simulator-version-min=5.0 -DPJ_SDK_NAME="\"iPhoneSimulator7.1.sdk\"" -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk" --host=arm-apple-darwin9 --target=arm-apple-darwin9 --prefix=/Users/noone/Documents/siplibs/i386orm
2.eXosip2ip
$./configure CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang CFLAGS="-O2 -m32 -mios-simulator-version-min=5.0 -DPJ_SDK_NAME="\"iPhoneSimulator7.1.sdk\"" -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk" LDFLAGS=" -framework MobileCoreServices -framework CFNetwork -framework CoreFoundation" --disable-openssl --host=arm-apple-darwin9 --target=arm-apple-darwin9 --prefix=/Users/noone/Documents/siplibs/i386ssl
iPhone真機:
1.osip2
$ ./configure CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang CFLAGS="-DPJ_SDK_NAME="\"iPhoneOS7.1.sdk\"" -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk" --host=arm-apple-darwin9 --target=arm-apple-darwin9 --prefix=/Users/noone/Documents/siplibs/arm
二、eXosip2
$ ./configure CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang CFLAGS="-DPJ_SDK_NAME="\"iPhoneOS7.1.sdk\"" -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk" LDFLAGS=" -framework MobileCoreServices -framework CFNetwork -framework CoreFoundation" --disable-openssl --host=arm-apple-darwin9 --target=arm-apple-darwin9 --prefix=/Users/noone/Documents/siplibs/arm
開始編譯:
通過上面的配置,生成make文件後,在執行:
$ make
$ make install
就能夠在--prefix指定的輸出目錄找到編譯好的庫文件。
合併:
通過前面的工做會分別生成適合模擬器和真機的2種庫,經過下面的命令能夠進行合併,更多細節請google。
lipo -create /Users/noone/Desktop/arm/lib/libeXosip2.a /Users/noone/Desktop/i386/lib/libeXosip2.a -output /Users/noone/Desktop/libs/libeXosip2_for_ios.a
最後:
在引入項目的時候注意:在引入前面指定的framework的同時,還須要引入「libresolv.9.dylib」這個eXosip的依賴庫,方可編譯經過。