工作積累之NDK編譯STL

2021-08-14 21:15:31 字數 654 閱讀 8621

ndk

方法:1.

stl = 'gnustl_static'

右邊的值還可以換成下面幾個:

system- 使用預設最小的c++執行庫,這樣生成的應用體積小,記憶體占用小,但部分功能將無法支援

stlport_static- 使用stlport作為靜態庫,這項是android開發網極力推薦的

stlport_shared- stlport 作為動態庫,這個可能產生相容性和部分低版本的android韌體,目前不推薦使用。

gnustl_static-使用 gnu libstdc++ 作為靜態庫

gnustl_shared-使用 gnu libstdc++ 作為動態庫

預設情況下stlport是不支援c++異常處理和rtti,所以不要出現 -fexceptions 或 -frtti ,如果真的需要可以使用gnustl_static來支援標準c++的特性,但生成的檔案體積會偏大,執行效率會低一些。

2. 在要使用stl的cpp檔案中包含相關的標頭檔案,並且使用using namespace std;

工作積累之NDK編譯STL

from 方法 system 使用預設最小的c 執行庫,這樣生成的應用體積小,記憶體占用小,但部分功能將無法支援 stlport static 使用stlport作為靜態庫,這項是android開發網極力推薦的 stlport shared stlport 作為動態庫,這個可能產生相容性和部分低版本...

工作積累之NDK編譯STL

方法 system 使用預設最小的c 執行庫,這樣生成的應用體積小,記憶體占用小,但部分功能將無法支援 stlport static 使用stlport作為靜態庫,這項是android開發網極力推薦的 stlport shared stlport 作為動態庫,這個可能產生相容性和部分低版本的andr...

NDK學習之預編譯指令

檢視目錄 c program files x86 microsoft visual studio 11.0 vc crt src 專案目錄 include a.h 使用 代表是本地的 void printb endif 該標頭檔案只被包含一次,讓編譯器自定處理好迴圈包含問題 pragma once ...