android 2.3如何編譯icu資源
如果只是測試修改後效果,執行步驟a即可;如果需要build後生效,則需要執行全部步驟
a. 在臨時目錄中編譯icu資源
1. 在external/icu4c下新建臨時目錄icubuild,進入icubuild目錄
$mkdir external/icu4c/icubuild
$cd external/icu4c/icubuild
2. 執行icuconfigurerun linux命令,生成make檔案
$.././runconfigureicu linux
3. 執行make -j2命令,如果make -j2出錯,請用附件中提供的對應檔案(android 2.3
make-j2 erroe.rar解壓後得到)替換(需要備份原檔案)
$make -j2
4. 將生成的external/icu4c/icubuild/data/out/tmp/icudt44l.dat push到手機測試
$adb remount
$adb push data/out/tmp/icudt44l.dat system/usr/icu/
$adb reboot
b. copy所需檔案
1. 將第一步生成的external/icu4c/icubuild/data/out/tmp/icudt44l.dat複製到
external/icu4c/stubdata下並改名為icudt44l-all.dat,覆蓋原來的同名檔案
2. 從ics工程上拷貝路徑prebuild\linux-x86\icu-4.4資料夾,放到相應的路徑下
c. 配置環境變數
重新配置環境變數(如果不配置正確會導致執行指令碼出錯)。以我的系統為例,工程目錄為
/proj/mtk71491/desktop/gb,配置過程如下:
1. 在終端中進入/proj/mtk71491/desktop/gb/alps目錄即:
$cd /proj/mtk71491/desktop/gb/alps
2. 然後執行envsetup.sh指令碼(等價於./ build/envsetup.sh):
$source build/envsetup.sh
3. 配置環境變數(注意「=」前後不要有空格),執行完沒有任何提示說明配置成功。
$export
android_eabi_toolchain=/proj/mtk71491/desktop/gb/alps/prebuilt/linuxx86/
toolchain/arm-eabi-4.4.3/bin/
$export ld_library_path=/proj/mtk71491/desktop/gb/alps/prebuilt/linuxx86/
icu-4.4/
$export android_build_top=/proj/mtk71491/desktop/gb/alps/
d. 執行指令碼,重新生成.dat檔案
執行指令碼,如果遇到文件印尼語錯誤請用附件提供(或mtk提供)的指令碼(
icu_dat_generator.rar)替換後再執行,如下所示:
1. 進入/proj/mtk71491/desktop/gb/alps/external/icu4c/studdata目錄
$cd external/icu4c/studdata
2. 執行指令碼
$./icu_dat_generator.py 4.4
如果該指令碼執行成功,則會更新一遍stubdata下的icudt44l-**.dat這些檔案,如果看到這些文
件的修改時間變成了最新的時間,就說明已經重新生成,真正最後起作用的是icudt44llarge.
dat這個檔案。
e. 重新編譯工程
一般修改後都是重新編譯工程來測試效果,使用 remake android 命令即可.
f. 編譯過程常見的問題
(1)、執行指令碼$./icu_dat_generator.py 4.4過程中出現如下錯誤。
icupkg: unable to open input file
"/media/android/mtk_compile/15_separate/alps/external/icu4c/tmp/coll/my.res">
原因:修改了icudt44l-large.txt配置檔案,而沒有在對應的檔案下加入icu資源。如在配置檔案新
增coll/my.res,但在external\icu4c\data\coll下沒新增my.txt檔案。
(2)、執行指令碼$./icu_dat_generator.py 4.4過程中出現如下錯誤。
item coll/in.res depends on missing item coll/id.res
item coll/in_id.res depends on missing item coll/id_id.res
item curr/in.res depends on missing item curr/id.res
item curr/in_id.res depends on missing item curr/id_id.res
item in.res depends on missing item id.res
原因:icu_dat_generator.py指令碼無法處理一些比較特殊的icu資源,更換新的指令碼就行(可參考添
加文件)。
(3)、執行指令碼$./icu_dat_generator.py 4.4過程中出現如下錯誤。是環境變數沒有配置或者配置失敗。
儲存到相簿
2016-5-6 10:21 上傳
2 3如何編譯W800 SDK程式並燒錄執行
開啟 cds workbench,匯入工程sdk,project explorer 區域,右鍵 import 選擇 existing csky projects into workspace,然 後點選 next。點選右側 browse 指定 w800 sdk 的工程路徑。路徑選擇後,sdk 工程會...
aria 例子如何在ubuntu中編譯
g c 編譯器 g debug 模式,只是編譯器,在編譯的時候,產生除錯資訊 wall 允許發出gcc能夠提供的所有有用的警告。也可以用 w來標記指定的警告。d 相當於c語言中的 define macro d reentrant reentrant巨集,請參考 o 制定目標名稱,預設的時候,gcc ...
如何在你的軟體中實時編譯並執行C C 源程式
如何在你的軟體中實時編譯並執行c c 源程式 當人們發布乙個軟體時,往往需要提供一些外掛程式介面給oem進行二次開發,同時提供若干dll庫或com元件給使用者呼叫.在本人看來這些方法能解決一些問題,但不夠靈活,具有很多缺陷與限制.這裡我給讀者提供乙個方法 直接執行c c 源程式 執行c c 源程式的...