@import url(http://www.shnenglu.com/cutesoft_client/cuteeditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
@import url(http://www.shnenglu.com/cutesoft_client/cuteeditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
在Android下需要用到字體光柵化,于是要用到freetype這個開源的字體光柵化的庫。
因為是和ios開發放在一個機器上,所以下面的過程是在macos的控制臺下進行的。
第一步:建立ndk的工具鏈
ndk的工具鏈是用來做一些第三方庫的交叉編譯用的,或者是不想使用ndk-build工具的人用的。它生成時需要指定api版本,也就是說一個工具鏈只能針對一個特定的api版本。并且生成的工具鏈無法使用rtti,exception和stl。
要生成工具鏈,先要配置一些路徑:
NDK_ROOT=~/Dev/android/sdk/ndk-r7-crystax
NDK_TOOLS_PATH=~/Dev/android/sdk/ndk-tools
XCODE_PATH=/Applications/Xcode.app/Contents/Developer
NDK_ROOT 是ndk的路徑,這里使用的是crystax修改的版本,支持寬字符和c++0x
NDK_TOOLS_PATH 是ndk的tools chain的路徑,這個目錄要事先建好。
XCODE_PATH 是xcode安裝的路徑,實際上是usr目錄所在的Developer目錄的路徑。這個只有在macos上才需要。
配置好后,執行
$NDK_ROOT/build/tools/make-standalone-toolchain.sh --platform=android-14 --install-dir=${NDK_TOOLS_PATH} --xcode=${XCODE_PATH}
這個腳本用來為ndk建立一個獨立的toolschain,專門針對特定的api版本。這里選擇的api版本是14,也就是紅字標記的位置。
執行完腳本,獨立的工具鏈就生成好了。
第二步:配置freetype
在freetype的路徑下執行
./configure --host=arm-linux-androideabi --prefix=${NDK_TOOLS_PATH}
這個命令用來配置編譯環境,執行后,會看到一些checking。這里還可以配置其他的東西,可以參考其他文檔。
第三步:編譯安裝
在freetype的路徑下執行
make
就開始編譯freetype了。
編譯結束后
make install
就會把freetype的.a文件和頭文件等拷貝到 ${NDK_TOOLS_PATH}下了。
2012-12-27 補充:
第一步建立好toolchain之后,在path里加上${NDK_TOOLS_PATH}/bin
PATH=$PATH:${NDK_TOOLS_PATH}/bin