assimp iOS/OSX 編譯步驟

花了大半天的時(shí)間,終于搞定了兩個(gè)平臺(tái)的編譯,并輸出靜態(tài)庫(kù)
一、assimp 編譯到 iOS 平臺(tái)

1、下載源碼
http://assimp.org/index.php/downloads
https://github.com/assimp/assimp/releases/

2、安裝 cmake
brew install cmake

3、進(jìn)入源碼目錄

cd assimp-5.0.0/port/iOS

4、執(zhí)行編譯

./build.sh --stdlib=libc++ --archs="arm64 x86_64"

等待編譯...

5、編譯成功
[100%] Linking CXX static library ../lib/libassimp.a
[100%] Built target assimp
[!] Moving built static libraries into: ./lib/iOS/x86_64/
[+] Creating fat binaries ...
[!] Done! The fat binaries can be found at ./lib/iOS

6、找到頭文件和庫(kù)文件
頭文件
assimp-5.0.0/include
庫(kù)文件
assimp-5.0.0/lib/iOS/libassimp-fat.a
assimp-5.0.0/lib/iOS/libIrrXML-fat.a
assimp-5.0.0/lib/iOS/libzlibstatic-fat.a

二、assimp 編譯到 MacOS 平臺(tái)

1、下載源碼
http://assimp.org/index.php/downloads
https://github.com/assimp/assimp/releases/

2、安裝 cmake gui
https://cmake.org/files/LatestRelease/
找到 cmake-3.20.0-macos-universal.dmg 并下載和安裝

3、打開(kāi) cmake gui 工具,點(diǎn)擊 "Browse Source" 選擇源碼目錄,點(diǎn)擊 "Browse Build" 選擇構(gòu)建目錄,一般會(huì)選擇源碼目錄下面的 build 目錄(如果沒(méi)有就新建一個(gè))

4、點(diǎn)擊 "Configure" 選擇 Xcode

5、在生成的變量列表里面
取消勾選 "BUILD_SHARED_LIBS"(如果你想構(gòu)建動(dòng)態(tài)庫(kù),那就保留這個(gè)選項(xiàng)是勾選狀態(tài))
勾選 "ASSIMP_BUILD_ZLIB"
找到 "CMAKE_OSX_ARCHITECTURES" 并填寫(xiě) arm64 x86_64

6、點(diǎn)擊 "Open Project",打開(kāi) Xcode 工程,Scheme 選擇 "ALL_BUILD"

7、切換 Run 的 Build Configuration 到 Release 然后編譯工程
頭文件
assimp-5.0.0/include
庫(kù)文件
assimp-5.0.0/build/code/Release/libassimp.a
assimp-5.0.0/build/contrib/irrXML/Release/libIrrXML.a
assimp-5.0.0/build/contrib/zlib/Release/libzlibstatic.a

三、建立全局庫(kù)引用
生成的庫(kù)文件很大,差不多有 500M,所以并不適合放在工程里,可以放在 Mac 某個(gè)目錄下,并建立全局庫(kù)引用;

1、新建 assimp 全局目錄
/usr/local/assimp/

2、拷貝 assimp-5.0.0/include 到 /usr/local/assimp/include

3、iOS: 拷貝 assimp-5.0.0/lib/iOS 到 /usr/local/assimp/lib/iOS
3、OSX: 拷貝 assimp-5.0.0/build/*/.a 到 /usr/local/assimp/lib/OSX

四、集成到 Xcode 方法一
1、打開(kāi) Xcode -> 選中 Targets -> 選中 Build Settings

2、找到 Search Paths -> Header Search Paths,并添加路徑
/usr/local/assimp/include

3、找到 Search Paths -> Library Search Paths,并添加路徑
iOS: /usr/local/assimp/lib/iOS
OSX: /usr/local/assimp/lib/OSX

4、打開(kāi) Xcode -> 選中 Targets -> 選中 Build Phases -> Link Binary With Libraries

5、添加庫(kù)文件
iOS:
/usr/local/assimp/lib/iOS/libassimp-fat.a
/usr/local/assimp/lib/iOS/libIrrXML-fat.a
/usr/local/assimp/lib/iOS/libzlibstatic-fat.a

OSX:
/usr/local/assimp/lib/OSX/libassimp.a
/usr/local/assimp/lib/OSX/libIrrXML.a
/usr/local/assimp/lib/OSX/libzlibstatic.a

五、集成到 Xcode 方法二
1、打開(kāi) Xcode -> Preferences -> Location -> Custom Paths

2、添加變量
assimp_header,assimp_header,/usr/local/assimp/include
iOS: assimp_lib,assimp_lib,/usr/local/assimp/lib/iOS
OSX: assimp_lib,assimp_lib,/usr/local/assimp/lib/OSX

3、打開(kāi) Xcode -> 選中 Targets -> 選中 Build Settings

4、找到 Search Paths -> Header Search Paths,并添加路徑
${assimp_header}

5、找到 Search Paths -> Library Search Paths,并添加路徑
${assimp_lib}

6、打開(kāi) Xcode -> 選中 Targets -> 選中 Build Phases -> Link Binary With Libraries

7、添加庫(kù)文件
iOS:
/usr/local/assimp/lib/iOS/libassimp-fat.a
/usr/local/assimp/lib/iOS/libIrrXML-fat.a
/usr/local/assimp/lib/iOS/libzlibstatic-fat.a

OSX:
/usr/local/assimp/lib/OSX/libassimp.a
/usr/local/assimp/lib/OSX/libIrrXML.a
/usr/local/assimp/lib/OSX/libzlibstatic.a

注意:
1、在 Link Binary With Libraries 添加庫(kù)文件時(shí),如果找不到 usr 目錄,可以按 Shift+Command+. 開(kāi)顯示隱藏目錄

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容