美文网首页LinuxBB-black开发板[Linux arm-v8]
TI-SDK内核编译—Apple的学习笔记

TI-SDK内核编译—Apple的学习笔记

作者: applecai | 来源:发表于2018-05-05 20:05 被阅读42次

    一,设置交叉编译工具链

    (否则编译过程会出现莫名其妙的错误)

    1.1 在/usr/local/文件夹下建立名为ARM-toolchain的文件夹

    mkdir /usr/local/ARM-toolchain
    

    1.2 下载安装包

    (注意区分64位和32位的ubuntu系统然后选择对应软件)
    https://releases.linaro.org/components/toolchain/binaries/6.2-2016.11/arm-linux-gnueabihf/

    1.3 cp压缩包到ARM-toolchain文件夹

    1.4 解压

    xz -d gcc-linaro-6.2.1-2016.11-i686_arm-linux-gnueabihf.tar.xz
    tar -xvf gcc-linaro-6.2.1-2016.11-i686_arm-linux-gnueabihf.tar
    

    1.5 修改环境变量

    在/etc/profile的最后一行添加
    export PATH=$HOME:/usr/local/ARM-toolchain/gcc-linaro-6.2.1-2016.11-i686_arm-linux-gnueabihf/bin:$PATH
    

    记住一定是HOME此处为PATH则无效果。

    1.6 让profile立即生效

    source /etc/profile
    

    1.7 查看环境变量是否添加成功

    输入$PATH,则能看到刚才添加的路径。
    

    1.8 查看安装成功否

    arm-linux-gnueabihf-gcc -v
    

    显示为gcc version 6.2.1 20161016

    注:参考https://www.cnblogs.com/AP0904225/p/6075816.html

    二,编译uboot

    • 2.1

      make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean

    • 2.2

      rm -rf ./am335x_evm

    • 2.3

      make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- O=am335x_evm am335x_boneblack_defconfig

    • 2.4

      make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- O=am335x_evm

    生成的MLO和u-boot.img在arm335x_evm文件中。
    注:参考网址
    <http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components.html#u-boot>
    

    三,编译kernel,设备树及模块

    3.1 Cleaning the Kernel Sources

    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
    

    3.2 Configuring the Kernel

    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- tisdk_am335x-evm_defconfig
    

    3.3 Compiling the Sources

    3.3.1 Compiling the Kernel

    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage
    

    This will result in a kernel image file being created in the arch/arm/boot/ directory called zImage.

    3.3.2 Compiling the Device Tree Binaries

    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x-boneblack.dtb
    

    The compiled device tree file with be located in arch/arm/boot/dts.

    3.3.3 Compiling the Kernel Modules

    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules
    

    3.3.4 Installing the Kernel

    make ARCH=arm  INSTALL_MOD_PATH=<path to root of file system> modules_install
    make ARCH=arm INSTALL_MOD_PATH=/tmp/images/rootfs modules_install
    

    Linux kernel, dtb files and modules都编译完成后,需要copy到同一个目录。
    参考< Chinese-BB-Black-Quick-Guide.pdf>

    相关文章

      网友评论

      本文标题:TI-SDK内核编译—Apple的学习笔记

      本文链接:https://www.haomeiwen.com/subject/knmerftx.html