查看“MYZR-IMX6-A9 Linux-3.0.35 v3.0”的源代码
←
MYZR-IMX6-A9 Linux-3.0.35 v3.0
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
[^_^]: MY-IMX6-A9 Linux-3.0.35 Build Reference Manual v3.0 ## **Download relevant documents** #### Cross-compile tool chain **A9 series**:Open the network disk to **2.1_OS_Linux-3.0.35 -> 03_toolchain**,Download **MY-IMX-A9** Directory. #### Source code **u-boot**:Open the network disk to **2.1_OS_Linux-3.0.35 -> 02_source**,Download **u-boot-2016.03-*.tar.bz2** (**Source package version number svn315 and above**). **Kernel**:Open the network disk to **2.1_OS_Linux-3.0.35 -> 02_source**,Download **linux-3.0.35-*.tar.bz2** (**Source package version number svn31 and above**). <br> ## **Install cross compilation tool chain** * Unload cross compilation tool chain <pre> =====> Input: tar xf gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.bz2 -C /home/myzr/my-work/03_toolchain </pre> * Copy the tool chain configuration file <pre> =====> Input: cp environment-setup-gcc-4.6-arm.sh /home/myzr/my-work/03_toolchaingcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/ </pre> * Source Toolchain Profile <pre> =====> Input: source /home/myzr/my-work/03_toolchain/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/environment-setup-gcc-4.6-arm.sh </pre> * Verify cross compilation tool installation <pre> =====> Input: ${CROSS_COMPILE}gcc -v =====> Output: Using built-in specs. COLLECT_GCC=arm-fsl-linux-gnueabi-gcc COLLECT_LTO_WRAPPER=/home/myzr/my-work/03_toolchain/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/../libexec/gcc/arm-fsl-linux-gnueabi/4.6.2/lto-wrapper Target: arm-fsl-linux-gnueabi Configured with: /work/build/.build/src/gcc-linaro-4.6-2011.06-0/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-fsl-linux-gnueabi --prefix=/work/fsl-linaro-toolchain-2.13 --with-sysroot=/work/fsl-linaro-toolchain-2.13/arm-fsl-linux-gnueabi/multi-libs --enable-languages=c,c++ --with-pkgversion='Freescale MAD -- Linaro 2011.07 -- Built at 2011/08/10 09:20' --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --with-gmp=/work/build/.build/arm-fsl-linux-gnueabi/build/static --with-mpfr=/work/build/.build/arm-fsl-linux-gnueabi/build/static --with-mpc=/work/build/.build/arm-fsl-linux-gnueabi/build/static --with-ppl=/work/build/.build/arm-fsl-linux-gnueabi/build/static --with-cloog=/work/build/.build/arm-fsl-linux-gnueabi/build/static --with-libelf=/work/build/.build/arm-fsl-linux-gnueabi/build/static --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm -L/work/build/.build/arm-fsl-linux-gnueabi/build/static/lib -lpwl' --enable-threads=posix --enable-target-optspace --enable-plugin --enable-multilib --with-local-prefix=/work/fsl-linaro-toolchain-2.13/arm-fsl-linux-gnueabi/multi-libs --disable-nls --enable-c99 --enable-long-long --with-system-zlib Thread model: posix gcc version 4.6.2 20110630 (prerelease) (Freescale MAD -- Linaro 2011.07 -- Built at 2011/08/10 09:20) </pre> <br> ## **u-boot compilation** ### Preparation before compilation * Create a compile working directory <pre> =====> Input: mkdir ~/my-work/02_source/ -p </pre> * Unpack source code to working directory <pre> =====> Input: tar xf u-boot-2016.03-svn*.tar.bz2 -C ~/my-work/02_source/ </pre> ### Compile the u-boot target file * Enter source directory <pre> =====> Input: cd ~/my-work/02_source/u-boot-2016.03 </pre> * Generate the target development board. config file <pre> =====> Input: make myimx6ek200-6q-1g_defconfig =====> Output: HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o SHIPPED scripts/kconfig/zconf.tab.c SHIPPED scripts/kconfig/zconf.lex.c SHIPPED scripts/kconfig/zconf.hash.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf # # configuration written to .config # </pre> 【Note】:**myimx6ek200-6q-1g_defconfig** above **make** after change to the configuration file corresponding to the development board model. <pre> ********** MY-IMX6-EK200 ********** myimx6ek200-6q-1g_defconfig myimx6ek200-6q-2g_defconfig myimx6ek200-6q-512m_defconfig myimx6ek200-6u-1g_defconfig myimx6ek200-6u-2g_defconfig myimx6ek200-6u-512m_defconfig myimx6ek200-6s-512m_defconfig myimx6ek200-6s-1g_defconfig myimx6ek200-6s-128m_defconfig myimx6ek200-6qp-1g_defconfig myimx6ek200-6qp-2g_defconfig myimx6ek200-6qp-512m_defconfig ********** MY-IMX6-EK314 ********** myimx6ek314-6q-1g_defconfig myimx6ek314-6q-2g_defconfig myimx6ek314-6q-512m_defconfig myimx6ek314-6u-1g_defconfig myimx6ek314-6u-2g_defconfig myimx6ek314-6u-512m_defconfig myimx6ek314-6s-512m_defconfig myimx6ek314-6s-1g_defconfig myimx6ek314-6s-128m_defconfig myimx6ek314-6qp-1g_defconfig myimx6ek314-6qp-2g_defconfig myimx6ek314-6qp-512m_defconfig </pre> * compiling <pre> =====> Input: make =====> Output: scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config.h UPD include/config.h GEN include/autoconf.mk GEN include/autoconf.mk.dep CHK include/config/uboot.release CHK include/generated/timestamp_autogenerated.h CFG u-boot.cfg ...... LD u-boot OBJCOPY u-boot-nodtb.bin OBJCOPY u-boot.srec SYM u-boot.sym COPY u-boot.bin CFGS board/myzr/myimx6/myimx6a9-6q-ddr3.cfg.cfgtmp MKIMAGE u-boot.imx </pre> **Note: If there is a prompt “cc1: error”,usually the configuration of the cross-compilation tool does not work, you can perform this step after pressing the "source tool chain profile” operation in the previous "cross compile tool chain installation".** * u-boot Target File **u-boot.imx** is the target file. ### Compile U-boot environment variable scripts <pre> =====> Input: mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "myzr bootscripts" -d board/myzr/bootscripts/myimx6a9_l3035_script.cmd my_environment.scr =====> Output: Image Name: myzr bootscripts Created: Wed Jan 2 09:39:38 2019 Image Type: ARM Linux Script (uncompressed) Data Size: 2090 Bytes = 2.04 kB = 0.00 MB Load Address: 00000000 Entry Point: 00000000 Contents: Image 0: 2082 Bytes = 2.03 kB = 0.00 MB </pre> ### Target File **"u-boot.imx " and " my_environment.scr" That is, the compiled target file, saving the two files** <br> ## **Kernel compilation** ### Preparation before compilation * Create a compile working directory <pre> =====> Input: mkdir ~/my-work/02_source/ -p </pre> * Unzip the source package to the working directory <pre> =====> Input: tar xf linux-3.0.35-svn*.tar.bz2 -C ~/my-work/02_source/ </pre> ### Compile the kernel target file * Enter source directory <pre> =====> Input: cd ~/my-work/02_source/linux-3.0.35 </pre> * To generate the target platform". config "file <pre> =====> Input: make myimx6a9_defconfig =====> Output: HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o SHIPPED scripts/kconfig/zconf.tab.c SHIPPED scripts/kconfig/lex.zconf.c SHIPPED scripts/kconfig/zconf.hash.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf # # configuration written to .config # </pre> **Note: If there is an error“Can't find default configuration "arch/x86/configs” ,because the configuration of the cross compilation tool chain did not work,You can do this step again after you have done it once in the "source toolchain configuration file" in "cross-compile toolchain installation earlier"** * Compiles kernel target files <pre> =====> Input: make zImage =====> Output: scripts/kconfig/conf --silentoldconfig Kconfig CHK include/linux/version.h UPD include/linux/version.h CHK include/generated/utsrelease.h UPD include/generated/utsrelease.h Generating include/generated/mach-types.h CC kernel/bounds.s ...... AS arch/arm/boot/compressed/piggy.gzip.o LD arch/arm/boot/compressed/vmlinux OBJCOPY arch/arm/boot/zImage Kernel: arch/arm/boot/zImage is ready </pre> * Kernel target file **arch/arm/boot/zImage** is the kernel target file ### Compile the kernel module package * Compiling <pre> =====> Input: make modules =====> Output: CHK include/linux/version.h CHK include/generated/utsrelease.h make[1]: “include/generated/mach-types.h” It's the latest. CALL scripts/checksyscalls.sh CC [M] fs/autofs4/init.o ...... LD [M] drivers/usb/gadget/g_serial.ko LD [M] fs/nls/nls_ascii.ko LD [M] fs/autofs4/autofs4.ko LD [M] fs/nls/nls_utf8.ko </pre> * Create a save directory for the kernel module <pre> =====> Input: mkdir modules </pre> * Install kernel module to specified directory <pre> =====> Input: make modules_install INSTALL_MOD_PATH=./modules =====> Output: INSTALL crypto/tcrypt.ko INSTALL drivers/gpu/drm/drm.ko INSTALL drivers/gpu/drm/vivante/vivante.ko ...... INSTALL fs/autofs4/autofs4.ko INSTALL fs/nls/nls_ascii.ko INSTALL fs/nls/nls_utf8.ko DEPMOD 3.0.35-myimx6a9-svn42 </pre> * Package the kernel module files <pre> =====> Input: tar cjf kernel-modules.tar.bz2 -C modules lib </pre> ### Target File **"zImage" and "kernel-modules.tar.bz2" are the target files compiled and the two files are saved** <br/> ## **Linux C program compilation** ### Prepare source code Open the disk to **5_MY-Demo -> MY-Linux-C-Demo**,Download **hello.c** file and copy to virtual machine. ### Compile target file <pre> =====> Input: ${CROSS_COMPILE}gcc hello.c -o hello.out </pre> **Note: If you have "no command found" information because the configuration of the cross-compilation tool chain is not effective, you can perform this step after pressing the "source tool chain profile" operation in the previous "cross compilation tool chain installation"** ### Run Linux C Target Program * Copy the compiled" hello.out" to the development board * Run the Linux C target program on the development board <pre> =====> Input: chmod +x ./hello.out ./hello.out =====> Output: MYZR Technology Co.,Ltd. Web: http://www.myzr.com.cn/ Wiki: http://wiki.myzr.com.cn/ BBS: http://bbs.myzr.com.cn/ Tel: 0756-3628023/3628021 E-mail: service@myzr.com.cn </pre> <br> -------------------------------------------------------------------------------- <pre> -------------------------------------------------------------------------------- * ZhuHai MYZR Technology CO.,LTD. * Latest Update: 2019/01/02 * Supporter: Tang Bin -------------------------------------------------------------------------------- </pre>
返回至
MYZR-IMX6-A9 Linux-3.0.35 v3.0
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
[-_-]
NXP平台:
MYZR-IMX6-EK200
MYZR-IMX6-EK200(EN)
MYZR-IMX6-EK314
MYZR-IMX6-EK314(EN)
MYZR-IMX6-EK336
MYZR-IMX6-EK336(EN)
MYZR-IMX6-EK140
MYZR-IMX6-EK140(EN)
MYZR-IMX6-EK140P
MYZR-IMX6-EK140P(EN)
MYZR-IMX8M-EK300
MYZR-IMX8M-EK300(EN)
MYZR-IMX8M-EVK
MYZR-IMX8Mmini-EK240
MYZR-IMX8Mmini-EK240(EN)
MYZR-IMX28-EK142
MYZR-IMX28-EK142(EN)
MYZR-LS1012A-EK200
MYZR-LS1012A-EK200(EN)
Rockchip平台:
MYZR-RK3288-EK314
MYZR-RK3288-EK314(EN)
MYZR-RK3399-EK314
MYZR-RK3399-EK314(EN)
Allwinner平台:
MYZR-R16-EK166
MYZR-R16-EK166(EN)
Microchip平台:
MYZR-SAMA5-EK200
MYZR-SAMA5-EK200(EN)
网关产品:
GW200
GW300
GW310/GW311
ST平台:
MYZR-STM32-EK152
所有页面
工具
链入页面
相关更改
特殊页面
页面信息