編譯iOS版本的tbb庫

2021-06-08 19:29:47 字數 1205 閱讀 1849

官方tbb庫並不支援ios  

考慮到opencv 2.4.2支援生成android的tbb庫,這說明一定也可以將tbb庫移植到ios中

在opencv 2.4.2中,生成android的tbb庫的使用的是opencv/3rdparty/tbb/cmakelists.txt,因此只需修改此檔案,然後再參考指令碼/users/koupoo/workspace/tbb/opencv/ios/configure-device_xcode.sh(這個指令碼用於生成ios 版本的opencv)就可以生成tbb庫的xcode專案

修改後的opencv/3rdparty/tbb/cmakelists.txt:

然後參考/users/koupoo/workspace/tbb/opencv/ios/configure-device_xcode.sh指令碼生成tbb的xcode專案:

cd /users/koupoo/workspace/tbb/tbb_build 

cmake -gxcode -dcmake_toolchain_file=../opencv/ios/cmake/toolchains/toolchain-iphoneos_xcode.cmake -dcmake_install_prefix=../opencv_iphoneos ../opencv/3rdparty/tbb/ 

最後會在目錄/users/koupoo/workspace/tbb/tbb_build中的到tbb的xcode專案

開啟tbb的xcode,然後酌情解決標頭檔案找不到的問題和其他問題,在實際編譯過程中,這些問題都好解決。

最終生成了ios用的tbb庫,接下來就要看這個tbb庫好不好用了。

注:在編譯過程中  唯一的不足之處是 修改了include/tbb/tbb_machine.h這個檔案: 將

#if ( __tbb_use_generic_part_word_cas)

#error generic implementation of part-word cas was explicitly disabled for this configuration

#endif

改為了#if ( __tbb_use_generic_part_word_cas)

//#error generic implementation of part-word cas was explicitly disabled for this configuration

#endif

編譯ios版本的librtmp openssl

編譯librtmp需要先編譯openssl,因為librtmp依賴openssl 首先編譯openssl 把以下內容儲存為shell指令碼 bin sh 儲存指令碼,新增指令碼的執行許可權 chmod x 指令碼名稱 執行指令碼 不出意外是可以編譯成功的,如果失敗,可以以開啟那個log檔案,檢視失敗...

tbb 使用預編譯標頭檔案和靜態庫

tbb 2.2中提供了統一的標頭檔案 tbb.h,只要包含這個檔案就可以使用所有tbb的庫了。為了使用起來方便,以及可以使用靜態庫,可以使用以下這些命令自己建立 2.解壓 tar zxvf tbb22 20090908oss src.tgz cd tbb22 20090908oss 3.編譯,沒必要...

iOS靜態庫的編譯

在做第三方的sdk的時候常會把自己的類編譯成靜態庫,在提供給開發者使用的是好就能隱藏自己的私密資訊,如私有api apikey等 此處將開源的jsonkit類庫編譯成靜態庫,然後再使用我們編譯好的靜態庫來來解析乙個json檔案 1.新建靜態庫工程,選擇framework library next 命...