转 : http://hi.baidu.com/_xiaxiaowen_/item/a14c51ff4ad1193dce9f329a
昨天编译android 4.0.1,想不到成功了,,想到mx也把内核源代码放出了,所以干脆把mx kernel也编译下,其中会出现几处错误,步骤如下:
我是在ubuntu 12.04 下编译的,其他版本应该也适合,不过要把那些交叉环境的库装好,这个百度交叉编译环境有很多,
首先是下载我编译android时编译出的交叉编译器:arm-eabi-4.3.1;这个是我好不容易找到的版本号,因为mx kernel中有预编译好的库文件,交叉编译器版本不对的话就会出现ebai Attribute 44 (eabi 属性不对)的蛋疼情况,
然后cd 进入kernel
1
cd /opt/WORKING_DIRECTORY/kernel/meizu-mx-kernel/
WORKING_DIRECTORY是我的android目录,meizu-mx-kernel是mx 内核目录
然后编辑Makefile
1
vim Makefile
可以用tab健补全文件名
第195行arch改成arm,CROSS_COMPILE 改成你的arm-eabi中的bin路径,不要忘了,还要加上arm-eabi-
1
2
ARCH ?= arm
CROSS_COMPILE ?=/opt/WORKING_DIRECTORY/prebuilt/linux-x86/toolchain/arm-eabi-4.3.1/bin/arm-eabi-
修改好了就按shift+;进入指令模式,然后键入wq退出
ls arch/arm/configs/ 看到这个文件里已有mx内核的配置文件,然后直接make meizu_defconfig配置内核
如果是第一次运行make meizu_defconfig会有很多显示,我已经运行过一次了,所以显示很少,
之后make -j3 开始编译,-j3是3线程让编译快些,
其中会出现一些error,是op_t类型的a0,a1.a2.a3的未初始化,更改下就行了
1
vim include/linux/memcopy.h
可以看到op_t的结构体就是unsight long int 型的,所以只要把有error的那些a0,a1,a2,a3,后面都加上=0就行了,a0=0,a1=0......
然后再make -j3编译就行了
生成的镜像在/arch/arm/boot中,
这个仅共学习的哈,不能烧到手机里!
arm-eabi-4.3.1 下载:http://yanshangtao.cn/dl/Linux/crosstools/arm-eabi-4.3.1.tar.gz
分享到:
相关推荐
一些内核编译的常用选项用法 开发环境概述 因为 Motorola MX1 处理器是基于 ARM 架构的,所以我们需要创建基于 ARM 的交叉开发环境,进行 linux 嵌入式开发。我们所谓的 ARM 交叉编译环境就是要在开发主机上创建一个...
nxp出厂Linux源码 移植成功后的Linux源码 NXP 提供的 Linux 源码肯定是可以在自己的 I.MX6...和 uboot 一样,在编译 Linux 内核之前要先配置 Linux 内核。每个板子都有其对应的默认配 置 文 件 , 这 些 默 认 配 置
nxp出厂Linux源码 移植成功后的Linux源码 NXP 提供的 Linux 源码肯定是可以在自己的 I.MX6...和 uboot 一样,在编译 Linux 内核之前要先配置 Linux 内核。每个板子都有其对应的默认配 置 文 件 , 这 些 默 认 配 置
和 uboot 一样,在编译 Linux 内核之前要先配置 Linux 内核。每个板子都有其对应的默认配 置 文 件 , 这 些 默 认 配 置 文 件 保 存 在 arch/arm/configs 目 录 中 。 imx_v7_defconfig 和imx_v7_mfg_defconfig 都...
聚散内容到聚散内存的复制,编译方法是写一个makefile 然后设定内核编译环境的环境变量,然后 make, Makefile 内容: obj-m += imx6_sdma_test_sg_to_sg_demo.o all: make -C /home/xxx/你的内核目录 SUBDIRS=$...
NXP i.MX RT1052驱动程序。资源代码可直接编译、运行。
1、修改文档中的部分错误 2、修改 B1 章 开发板 FTP 服务器移植与搭建 3、修改 30.4.5 小节,添加在 uboot 更新 EMMC 的 u-boot.imx。...6、修改 64.6 小节,修改编译内核自带 FT5X06 驱动的配置路径
该程序是基于linux-2.6.35.3内核,开发板i.MX283(287)A,包含驱动源码及其编译后的.ko文件,测试源码等
移植成功后的Linux源码 NXP 提供的 Linux 源码肯定是可以在自己的 I.MX6ULL EVK 开发板上运行下去的,所以我们肯定是以 I.MX6ULL EVK 开发板为参考,然后将 Linux 内核移植到 I.MX6U-ALPHA 开发板上的。 下载内核 ...
NXP i.MX RT1052驱动程序,UCOS实战。 支持RT105X系列控制器编译和运行。 项目代码可顺利编译运行~
使用此 repo,您可以自定义源代码并自己编译 Linux 内核映像。 好好享受! 如何编译 ###1。 下载源代码### git clone ###2。 编译### make mx3_defconfig make -j8 ARCH=arm CROSS_COMPILE=arm-linux-...
EasyARM i.MX283A V1.02新软件计划我觉得周立功板子性价比不错,最大的问题就是资料老旧,所以现在我要移植Linux 4.13.2内核和U-Boot 2017.9 ,后期有可能可行做接线Pi和对应的文件系统吧。这是兴趣而已,也有可能...
相对与官方现在可下的版本NVIDIA-Linux-x86-96.43.07-pkg1.run安装更简单,已经使用新的内核进行编译
此文档是本人经过两周,踩了无数坑而写完的。主要就是为了将openwrt系统移植到i.mx6ul开发板上,由于内核不匹配,一次需要将开发板的内核指定到编译路经里面。有需要移植openwrt系统的小伙伴可以好好看看。
我移植 linux-2.6.35编译完成后运行,启动一直停在starting kernel . . .,检查machine-type、cpu-id、时钟、入口地址等可能会导致问题的地方都没有问题,后想到可能是串口使用的引脚和内核不一致,后才发现板子使用...
开发板为i.MX6UL。内核版本为3.14.38。交叉编译工具链为:arm-fsl-linux-gnueabi-gcc。亲自编译并测试可行。压缩包中包含部署文件和详细教程,可直接部署。
目录【1】 Arm与Cortex【1.1】 Arm下的字节、半字和字【2】 交叉编译简介【2.1】 安装步骤【3】汇编语法【3.1】 GNU 汇编语法【3.2】Cortex-A7 常用汇编指令【3.2.1】数据传输指令【3.2.2】存储器访问指令【3.2.3】...
Imx6的UBOOT源码,编译一直即可使用
状态:一切都能编译,但是此内核尚未经过测试。 这是为了为基于Freescale i.MX 508的Amazon Kindle获取一个稍微更现代的内核而做的尝试。由于该内核是最简单的型号,目前该内核着重于Kindle 4 NT。 稍后,我计划增加...
基于VXWorks7对 PowerPC、ARM架构设备硬件信息采用设备树方式进行配置,类似VxWorks6x下的WBus...设备树文件位于BsP目录下,编译阶段生成设备二进制文件,可在 VXWorks内核启动时加载,也可以编译集成到内核映像文件中