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/加入头文件搜索路径中即可
