MY-IMX6 L3035编译手册
3.0.35版本代码(3.0.35 version code)u-boot源码(u-boot source code)文件名:u-boot-2009.08--svn*.tar.xz
name of file:u-boot-2009.08--svn*.tar.xz
kernel源码(kernel source code)文件名:linux-3.0.35--svn*.tar.xz
name of file:linux-3.0.35--svn*.tar.xz
交叉编译工具 (cross compifer tool)文件名:gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.bz2
name of file:gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.bz2
配置编译环境(configuration of compifer environment)
准备源码(prepare source code)准备源码包 (prepare source code package)1)创建工作目录
create working directory
创建 ~/my-imx6 作为工作目录
create ~/my-imx6 as working directory
$ mkdir ~/my-imx6
创建 ~/my-imx6/02_source/imx_3.0.35_4.1.0 作为源码目录
create ~/my-imx6/02_source/imx_3.0.35_4.1.0 as source code directory
$ mkdir ~/my-imx6/02_source/imx_3.0.35_4.1.0 -p
创建 ~/my-imx6/03_tools 作为工具目录
create ~/my-imx6/03_tools as tool directory
$ mkdir ~/my-imx6/03_tools -p
2)复制源码包到开发主机中
copy source code package to the development host
这一步骤自己采取相应的方式进行。
do it in this step in your own way。
提示:这里将网盘中“02_源码”复制到Linux开发主机的“~/my-imx6/02_source/imx_3.0.35_4.1.0”,将网盘中“03_工具/toolchain”复制到Linux开发主机的“~/my-imx6/03_tools”。
tip:this step is to copy “02_source code”from network disk to “~/my-imx6/02_source/imx_3.0.35_4.1.0”in development host,and copy “03_tool/toolchain”to “~/my-imx6/03_tools”。in development host
解压源码包 (decompress source code package)1)解压u-boot源码和内核源码
decompress u-boot source code and kernel source code
$ cd ~/my-imx6/02_source/imx_3.0.35_4.1.0
$ tar xf u-boot-2009.08--svn*.tar.xz
$ tar xf linux-3.0.35--svn*.tar.xz
2)解压交叉编译工具
decompress cross compiler tool
$ cd ~/my-imx6/03_tools/
$ tar jxf gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.bz2
开发环境配置(development environment configuration)安装需要的包 (install package needed)1)更新源列表
list of updated source
$ sudo apt-get update
更新完成后如下图所示:
after update,it will look like below:
2)安装aptitude包管理工具和ia32-libs
install aptitude package management tool and ia32-libs
提示:如果编译主机的Linux是32位的,可以跳过此步骤。
tips:if Linux of compiler host is 32bit,you can skip this step。
install aptitude package management tool
$ sudo apt-get –y install aptitude
install ia32-libs with aptitude
$ sudo aptitude –y install ia32-libs
提示:下图为安装过aptitude和ia32-libs后,再次执行安装命令的截图。
tips:following is the screenshots with re-execution of installation command after installation of aptitude and ia32-libs is finished。
3)安装mkimage工具
install mkimage tool
$ sudo apt-get -y install uboot-mkimage
提示:下图为安装过mkimage工具后,再次执行安装命令的截图。
tips:following is the screenshots with re-execution of installation command after installation of mkimage tool is finished。
4)安装ncurses-dev
install ncurses-dev
说明:make menuconfig对其具有依赖性质。
instruction:make menuconfig is dependent on it。
$ sudo aptitude -y install ncurses-dev
提示:下图为安装过ncurses-dev工具后,再次执行安装命令的截图。
tips:following is the screenshots with re-execution of installation command after installation of ncurses-dev tool is finished。
配置MY-IMX6编译的环境变量 (configure environment variables of MY-IMX6 compilation)1)将平台信息写入到一个新的配置文件
write platform information to a new configured file
$ echo "export ARCH=arm" > ~/my-imx6/03_tools/myimx6_3035_build_env
2)将交叉编译工具链路径写入到配置文件
write compiler tool chain path to configured file
enter cross compiler tool directory
$ cd ~/my-imx6/03_tools/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/
write path to configured file
$ sed -i "$a IMX6_GCC462_PATH=$PWD" ~/my-imx6/03_tools/myimx6_3035_build_env
write cross compiler tool to configured file
$ sed -i "$a export CROSS_COMPILE=$IMX6_GCC462_PATH/arm-none-linux-gnueabi-" ~/my-imx6/03_tools/myimx6_3035_build_env
3)查看配置文件
view configured file
$ cat ~/my-imx6/03_tools/myimx6_3035_build_env
4)附图
figures
注意:如果在某一步操作错误,则需要删除 ~/my-imx6/03_tools/myimx6_3035_build_env 文件,并重新按照本小节操作。
note:if an error occurs in any step, need to delect ~/my-imx6/03_tools/myimx6_3035_build_env ,and operate again all steps of this segment。
编译u-boot(compile u-boot)
进入u-boot源码目录(enter u-boot source code directory)$ cd ~/my-imx6/02_source/imx_3.0.35_4.1.0/u-boot-2009.08/
使配置文件生效(validate configured file)execute source command
$ source ~/my-imx6/03_tools/myimx6_3035_build_env
view compiler configuration
$ echo $ARCH
$ echo $CROSS_COMPILE
提示:可看到ARCH和CROSS_COMPILE被设置
tips:you can see that ARCH和CROSS_COMPILE is configured
verify cross compiler tool configuration
$${CROSS_COMPILE}gcc –v
提示:执行命令后可以看到终端显示出交叉编译工具的版本信息。如下图:
tips:you can see version information of cross compiler tool shown on terminal after execution of command.as below:
清除u-boot配置(remove u-boot configuration)$ make distclean
u-boot配置(u-boot configuration)evaluation board and its corresponding u-boot compiler configuration:
[table=98%,transparent]
[tr=transparent][td]
评估板主型号
(evaluation board main model)
[/td][td]
CPU类型-内存容量
(CPU type-memory capacity)
[/td][td]
对应的u-boot配置
(corresponding u-boot configuration)
[/td][/tr]
[tr=transparent][td=1,4]MY-IMX6-EK200[/td][td]6Q(四核)- 1G