当前位置:首页 » 编程软件 » mtk内核编译

mtk内核编译

发布时间: 2022-05-10 15:04:30

⑴ android版本4.2.2基带版本MTK6577四内核版本2.6.35.7这些是什么意思不求解

你标题里提供的信息都是关于软件版本的信息,表示你的手机是基于linux
2.6.35.7版本内核制作的安卓4.2.2版,通信基带采用MTK6577方案。

⑵ 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/

⑶ MTK的7628 wifi芯片 如何换SDK 内的内核

修改这里
config/mkconfig 这个文件
原来:
echo " define_bool CONFIG_DEFAULTS_KERNEL_2_6_36 y"
echo " define_bool CONFIG_DEFAULTS_KERNEL_3_10_14 n"
改成

echo " define_bool CONFIG_DEFAULTS_KERNEL_2_6_36 n"
echo " define_bool CONFIG_DEFAULTS_KERNEL_3_10_14 y"
,如果选择支持OpenWrt Support这项,编译后可能会报错,提示如下
make[2]: *** No rule to make target '/home/rpjday/flex/MTK_SDK/SDK/RT288x_SDK/source/kernel_headers/include/linux/autoconf.h', needed by 'crc32.o'. Stop.
解决办法:

修改这个文件MT7688/RT288x_SDK/source/linux-3.10.14.x/include/uapi/linux下面的这个文件Kbuild

ifndef CONFIG_SUPPORT_OPENWRT
header-y += autoconf.h
endif

改成
#ifndef CONFIG_SUPPORT_OPENWRT
header-y += autoconf.h
#endif
清除,再编译就OK了
我修改的地方是这里

⑷ 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

⑸ 求助MTK7620a编译时make menuconfig的选择问题

MTK7620a编译时make menuconfig的选择问题
你好,在Linux里面我们所看到的menuconfig界面是通过配置内核顶层的Kconfig产生的,而当输入make menuconfig命令的时候系统会读取Makefile来解析Kconfig。
通常会在Kconfig里面编写以下四项:
1、模块的名字,用mole开头;
2、选项,通常设为bool(二选一)或者trastate(三选一);
3、默认选项;
4、帮助说明。
不知道你说的在7620a中出现的是什么问题,但是基本上都是按照linux编写原则来的。 有关menuconfig 的更多解释可以参考以下文章,写的很详细。希望能够帮到你~~

⑹ QX9300 虚拟机vmware安装ubuntu方式编译android 4.4内核大约要多久

vmware workstation 10
ubuntu-10.04.4-desktop-amd64.iso
1
ubuntu的安装,打开vmware workstation 10,点创建新的虚拟机
2
点下一步
3
选择下载的UBANTU光盘ISO文件,点下一步
4
设置Ubantu名称及登录用户名及密码,点下一步
5
设置虚拟机文件名称及保存在磁盘上的位置,点下一步
6
设置虚拟机使用磁盘大小,若要编译ANDROID,至少设置40GB,这里设置200GB保证足够够用
7
至此主要的设置都完成了,直接点击完成即可。也可点击自定义硬件进行详细的设置,我们点自定义硬件,来设置内存
8
把虚拟机内存设置成实体机内存的一般大小,以保证安装Ubantu的时候,速度不会卡,这里我设置成4GB,其它保持默认即可。设置完后点击关闭。这个我们可以在任何时候配置硬件,甚至可以在UBANTU安装完成之后再重新编辑硬件设置,只需点下图的编辑虚拟机设置
9
配置完成,下面才是真正开始安装,点击开启此虚拟机UBANTU即开始自动安装,全程自动,无人值守
10
初始化安装
11
安装中 ,5%
12
安装中 ,50%
13
安装中 ,79%
14
安装中 ,100%
15
安装完成就开始自动安装VMware Tools,这VMware Tools不属于Ubantu操作系统,只是VMware公司方便主操作系统与客户操作系统交互而提供的一个工具软件
16
安装完成,自动重启,显示登陆界面,点击输入前面设置的密码登录
17
登陆完成,安装成功!!!
END
1
下面对UBANTU进行一些设置,以符合我们的工作习惯
修改默认显示分辨率,选择System--->Preference--->monitors,修改显示分辨率为1280x800
2
修改待机屏幕保护及锁屏时间,选择System--->Preference--->screensaver,,去掉屏幕保护程序激活时锁屏,免得安装软件时或编译时总要输入密码才能登入系统
3
编辑虚拟机硬件设置,修改客户机时间与主机时间同步
4
调出我的电脑、网上邻居、我的文档、回收站等图标
按键盘的Alt 和 F2,打开 Run Application程序,输入gconf-editor,然后Run打开Configuration Editor,选择apps--->nautilus--->desktop,如图所示框选相应选项即可
5
将终端放置在桌面和上面板上,以方便我们点击调用,如图所示
6
安装右键调用终端工具,通常点击右键,右键菜单没有open in terminal右键打开终端工具
输入sudo apt-get install nautilus-open-terminal命令,安装右键打开终端工具
7
修改操作系统界面为中文,选择System--->admininstration--->langunge support,如图设置安装中文语言包,经试验安装中文语言包极其缓慢,需要更新源,下一节会讲到
8
设置虚拟机系统与主机系统共享文件夹,方法很多,
1.主机读取虚拟客户机共享出来的文件夹
2.虚拟客户机读取主机共享出来的文件夹
后面我会花时间专门一节讲解虚拟机系统与主机文件夹共享的各种方法
END
本经验是由本人亲自测试编写,图片文字全部为原创,网络经验首发,未经许可,谢绝转载!
如果觉得本人的经验对你有帮助,请点击支持,谢谢!
换一批相关经验
android4.4源码编译环境搭建72014.06.26
android开发环境之虚拟机搭建72014.04.30
Ubuntu10.04搭建MTK android编译环境02014.04.06
android学习1-虚拟机的搭建02015.01.15
android学习2-虚拟机设置成汉语02015.01.16
相关标签 android 虚拟机
©2015Bai 使用网络前必读 网络经验协议 作者创作作品协议

⑺ MTK是什么

MTK是现在市场上所有国内手机设计、制造商使用的最多的一个完整的手机产品解决方案,大部分做手机的技术人员都对此有接触和了解。不过,MTK的整套软件系统十分庞大且复杂,很多刚接触这套系统的软件工程师一时不知如何进行配置和客户化定制。本文在此对整个MTK软件系统的工程结构和配置进行了简单介绍,希望通过此文和大家相互交流MTK软件系统的维护和修改、定制方面的心得。

MTK使用了nucleus实时操作系统,在其上做了个内核抽象层的封装,以适应多种实时操作系统,如oscar、ThreadX、nucleus。整个软件系统包括nucleus操作系统、平台设备驱动、协议栈、文件系统、WGUI、MMI、J2ME等。在这里MMI部分几乎包括了操作系统内核、协议栈、文件系统之上的所有部分,其中WGUI也在其中。

MTK的PC模拟版使用VC的编译器和链接器生成,ARM版使用ADS1.2的编译器和链接器生成。因为MTK的整个软件系统是一个很庞大而且复杂的工程,并且要支持多个MTK的产品系列和多家客户的客户化支持,使用集成开发环境(IDE)已经无法胜任,而且很难做到整个工程的自动构建和资源、代码的生成。所以MTK的软件系统使用了windows下的GNU开发工具链(MinGW)来进行工程的管理、配置和构建,MTK将MinGW放到了第三方工具中。另外还使用了perl脚本来解析用户输入的命令行参数,因此第三方工具中还包含了ActivePerl(windows下的perl解释器)。不过,整个软件系统并没有使用MinGW的全部工具,好象只使用了make这个工具,由几个Makefile控制了构建的过程,在编译和链接时根据最终生成PC模拟版还是ARM版而分别调用VC的编译器和链接器或ADS1.2的编译器和链接器。

接下来我们从具体的工程实践来看MTK的手机软件系统。

一. MTK手机软件系统的目录结构简介

MTK手机软件系统的主要目录如下所示,因整个工程的目录树非常庞大,为简单起见和减小篇幅,去除了在工程结构中相对不重要的目录。

.
|-- Fast_DL
|-- ROM
|-- adaptation
|-- applib
|-- bootloader
|-- config
|-- custom
| |-- app
| | `-- TOP_6227_BB
| |-- common
| |-- drv
| | |-- LCD
| | | `-- TOP_6227_LCM
| | `-- image_sensor
| | `-- MT9D011
|-- drv
|-- fs
|-- inc
|-- init
|-- interface
|-- j2me
|-- kal
|-- make
| |-- applib
| | |-- applib.def
| | |-- applib.inc
| | |-- applib.lis
| | `-- applib.pth
| |-- bootloader
| |-- config
| |-- custom
|-- media
|-- mmi
|-- modis
|-- mtk_lib
| `-- MT6227
| `-- S01
| `-- gprs
| |-- abm.lib
| |-- adaptation.lib
| |-- applib_inet.lib
|-- nucleus
|-- nvram
|-- plutommi
|-- tools

⑻ 如何成为一个Linux内核开发者

内核几乎全是用C写成的,有一些架构相关的部分是用汇编语言写成的。熟练掌握C语言是内核开发的必备条件。汇编语言(任何架构)的了解不是必须的,除非你准备做某个架构的底层开发。虽然下面这些书不能完全代替扎实的C语言教学和/或者成年累月的经验,他们还是不错的参考,如果用得着的话: - "The C Programming Language" 作者: Kernighan and Ritchie [Prentice Hall]- "Practical C Programming" 作者: Steve Oualline [O'Reilly]
内核是用 GNU C 和 GNU 工具链写成的。虽然它符合 ISO C89 标准,它还是使用了一些标准中没有的扩展。内核是自成体系的 C 环境,它并不依赖标准C库,所以某些C语言标准是不支持的。任意长度long long类型除法和浮点数是不被允许的。有时候会很难理解内核对于它所使用的工具链和扩展的假定,而且不幸的是也没有关于它们的绝对的参考。请查阅gcc 的info页(`info gcc`)以获取有关信息。
他们发现遵循这些标准对于这样一个大规模的且地理上分散的团队是最佳的选择。尝试提前学习尽可能多的有关这些标准的知识,因为它们都有很好的文档;不要期望别人会遵照你或者你公司的行事方式。
文档Linux内核源代码树有很多文档,它们对于学习如何与内核社区交流来说有不可估量的价值。当新的功能加进内核的时候,通常建议作者把解释这个新功能的文档也加进内核。如果一个内核变动导致了内核对用户空间界面的改变,建议你把这个信息或者一个解释了这个变动的manpage的补丁发送给手册页的维护者 [email protected]
Do*****entation/Changes
这个文件介绍了成功编译和运行内核所需要各种不同软件的列表。
Do*****entation/CodingStyle
这个文件描述了Linux内核代码风格,还有背后的一些原因。所有的新代码的要符合这个文档里的准则。大多数维护者只会接受符合这些规则的补丁,很多人只看符合正确风格的代码。

⑼ 自己编译的android内核怎么烧录到手机上

------解决方案--------------------------------------------------------自己编译的android内核烧上去应该有问题,有没有相应的驱动
------解决方案--------------------------------------------------------MTK有出Android的方案,你首先应该问MTK技术支持去拿下载工具。
------解决方案--------------------------------------------------------如果你没有对应的硬件驱动是白做功夫
在搞定display driver的基础上能显示机器人 然后就卡住了
等你搞定驱动之后 并且把这个集到ROM里面的时候
烧录就很简单了 flashtool / 超级终端
无数的软件都可以下载前提是兄弟你的COM口/下载口驱动没有问题

热点内容
app什么情况下找不到服务器 发布:2025-05-12 15:46:25 浏览:714
php跳过if 发布:2025-05-12 15:34:29 浏览:467
不定时算法 发布:2025-05-12 15:30:16 浏览:131
c语言延时1ms程序 发布:2025-05-12 15:01:30 浏览:166
动物园灵长类动物配置什么植物 发布:2025-05-12 14:49:59 浏览:737
wifi密码设置什么好 发布:2025-05-12 14:49:17 浏览:149
三位数乘两位数速算法 发布:2025-05-12 13:05:48 浏览:399
暴风影音缓存在哪里 发布:2025-05-12 12:42:03 浏览:544
access数据库exe 发布:2025-05-12 12:39:04 浏览:632
五开的配置是什么 发布:2025-05-12 12:36:37 浏览:366