mtk編譯netcore
1. mtk編譯 系統找不到指定路徑
運行tools/chk_env.exe檢查編譯環境是否安裝正確。
你可以先查詢一下make目錄下Option.mak文件中DIR_ARM的設置。
2. 手機方案公司需要在mtk工程源碼編譯後將apk預裝到system/app目錄下如何操作
在 Android 中,如果要使用系統限制的許可權(比如 android.permission.WRITE_SECURE_SETTINGS),我們需要把程序安裝到 /system/app/ 下。
下面以 SecureSetting.apk 為例,演示這個操作。需要准備一台已經獲得 Root 許可權的手機。
1、通過 USB 連接手機和電腦。
2、使用 adb 控制手機。
源碼列印?
1. $ adb push SecureSetting.apk /sdcard/ // 上傳要安裝的文件,為安裝做准備。
2. $ adb shell
3. $ su // 切換到 root 用戶。如果沒有獲得 Root 許可權,這一步不會成功。
4. # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 讓分區可寫。
5. # cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 這一步可以用 cp 實現,但一般設備中沒有包含該命令。如果使用 mv 會出現錯誤:failed on '/sdcard/NetWork.apk' - Cross-device link。
6. # mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 還原分區屬性,只讀。
7. # exit
8. $ exit
$ adb push SecureSetting.apk /sdcard/ // 上傳要安裝的文件,為安裝做准備。
$ adb shell
$ su // 切換到 root 用戶。如果沒有獲得 Root 許可權,這一步不會成功。
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 讓分區可寫。
# cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 這一步可以用 cp 實現,但一般設備中沒有包含該命令。如果使用 mv 會出現錯誤:failed on '/sdcard/NetWork.apk' - Cross-device link。
# mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 還原分區屬性,只讀。
# exit
$ exit
3. MTK 如何配置內核編譯選項
使用make menuconfig ,來配置kernel的選項
a、首先通過下面的方式進入menuconfig, 在project 下輸入:
cd kernel
TARGET_PRODUCT=<project> make menuconfig
在彈出的窗口後,enter < / > 進入查找窗口,輸入要查找的kernel feature名稱
查到該feature後,選擇開啟或者關閉該feature, 保存,退出menuconfig
b、 完成上述配置後,將.config復制到mediatek/config/$project/autoconfig/kconfig/目錄下並重命名為project
然後進行編譯kernel
4. MTK當修改一些代碼時,使用什麼編譯命令可以
1: ./mk n(r) kernel; ./mk bootimage;當修改build-in 到kernel相關代碼時,要使用此命令,具體文件參考如下:
alps/kernel/
alps/mediatek/platform/mt65xx/kernel/
alps/mediatek/source/kernel/
alps/mediatek/coustom/mt65xx/kernel/
alps/mediatek/coustom/common/kernel/
alps/mediatek/coustom/$porject_name$/kernel
...
ps: 由於./mk bootimag是很長的過程, 如果您沒有修改到ramdisk相關的code, 可以參考以下FAQ加快編譯.
只修改kernel的時候, 快速編譯方法: FAQ05444
2: ./mk n(r) k /mole_path 當修改kernel mole相關代碼時,要使用此命令,具體文件參考如下:
alps/mediatek/platform/mt65xx/kernel/drivers/ccci/
alsp/mediatek/platform/mt65xx/gpu/
......
通常看對應文件夾的Makefile就知道是build in到kernel,還是ko,
obj-m += xxx, 表示build成ko mole,
obj-y += xxx, 表示build in到bootimag.
ps: 要特別注意, 如果你new的時候是user版本, 在使用此命令的時候一定要加上
-oTARGET_BUILD_VARIANT=user, 否則會導致將之前new的結果全部刪除,
3: ./mk n pl 當修改preloader相關代碼時,要使用此命令,具體如下:
alps/mediatek/platform/mt65xx/preloader/
alps/mediatek/source/preloader/
alps/mediatek/coustom/mt65xx/preloader/
alps/mediatek/coustom/common/preloader/
alps/mediatek/coustom/$porject_name$/kernle
......
4: ./mk uboot 當修改uboot相關代碼時,要使用此命令,具體如下:
alps/mediatek/platform/mt65xx/uboot/
alps/mediatek/source/uboot/
alps/bootable/bootloader/uboot/
alps/mediatek/coustom/mt65xx/uboot/
alps/mediatek/coustom/common/buoot/
alps/mediatek/coustom/$porject_name$/uboot/
......
5: ./mk systemimage 當修改system相關代碼時使用此命令,具體文件目錄如下:
alps/frameworks/
alps/packages/
alps/vendor/
alps/hardware/
alps/dalvik/
alsp/external
...........
new完一次後, 如果使用這個命令其實很耗時間, 建議參考6的做法,
6: ./mk mm ./mole_path ; 主要build一些moles, 如lib庫, native 可執行程序, jar庫, jar
apk. 相關文件參考如下:
alps/frameworks/base #可以根據修改的某些文件, 進入更細的目錄去build相關庫.
alps/frameworks/native/libs/binder/ #native目錄下有很多相關的lib庫.
alps/frameworks/native/libs/binder/utils/
alps/external #主要是一些native的二進制可執行文件.
ps: build完後可以找到對應的目標文件直接push到手機, 也可以使用./mk snod直接快速打包新的system.img, 然後download. 可參考如下FAQ:
如何加速./mk snod打包: FAQ10299
7: ./mk recoverimage 當修改recover相關代碼時使用此命令,具體如下:
alps/bootable/recovery/
alps/mediatek/customer/$project_name$/recovery/
......
8: ./mk factoryimage: 當修改factory相關代碼時使用此命令,具體如下:
alps/mediatek/coustom/$project_name$/factory/
alps/mediatek/coustom/common/factory/
alps/mediatek/source/factory/
......
9: ./mk secroimage 當修改secro相關代碼時使用此命令,具體如下:
alps/mediatek/source/secro/
alps/mediatek/coustom/$project_name$/secro/
5. MTK09A在編譯的時候提示錯誤 [ERROR] can't open ~tmpFile.lst make: *** [mmi_featukre_check] Error 2
你的提問比較模糊,不好回答。編譯沒錯誤只是說明程序本身沒有語法錯誤。調試時還要用到相關晶元的動太鏈接庫,找不到時就會提示。同時應該會提示哪個文件,仔細看下提示信息,根據提示檢查器件驅動是否已安裝。
6. MTK 的下載工具如何編譯我在MTK發的源碼里沒有找到工程文件。
下載工具不就是Flash_tool.exe么,要自己編嗎?網路下一個就OK。
7. mtk編譯環境怎麼安裝我已經安裝了ads1.2 、ActivePerl-5.12.2.1202-MSWin32-x86-293621.zip以及 vc 6.0
office2007
VC2008 只選c++
Perl Xp 復制robo到 system32下
Sourceinsight
RVCT 只選編譯工具 這個破解概率真的很低,我裝了好多次才破解成功的
分布式
BC3 即beyond_compare
UltraEDIT
看不明白的一個一個網路什麼意思了,其實我裝的比這還要多很多。。。看自己需要了
8. 如何檢查我的MTK編譯環境是否正確
方法如下:
點擊開始--運行--輸入cmd,點擊確定。
在命令行窗口輸入javac,出現下圖所示:
再次輸入java,出現下圖所示:
最後輸入java -version,出現下圖所示:
如果出現上面的前兩個圖片顯示的內容就說明jdk的環境變數配置是正確的,第三個命令是檢查當前電腦中使用的jdk的版本及位數。
9. mtk平台修改init.rc後如何快速編譯啊
修改init.rc文件後,一般只需要做以下快速編譯即可生成新文件。
./mk bootimage
10. MTK增加模塊後編譯找不到自己的頭文件,該怎麼處理
你是否有試過編譯一個文件時,老是因為缺掉一些頭或庫文件而編譯不通過呢?下面給出一種方法來解決這個問題:
1.先安裝apt-filesudoapt-get install apt-filesudoapt-file update
2.假如make時,出現
main.c:21:21:
error: gtk/gtk.h: No such file or directory使用:sudoapt-file searchgtk.h
運行以上命令可能返回好多包,精簡一下sudoapt-file search gtk/gtk.h結果如下:
# apt-file search gtk/gtk.h
libgfcui-dev:
usr/include/gfc-2.0/gfc/gtk/gtk.hh
libgtk+2.0-directfb-dev:
usr/include/directfb/gtk-2.0/gtk/gtk.h
3.最後定位該頭文件所在的位置
wyylling@ubuntu:~/Gnome$ locate gtk.h
將該/usr/include/gtk-2.0/加入頭文件搜索路徑中即可