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

一,设置交叉编译工具链

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

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>

    原文作者:applecai
    原文地址: https://www.jianshu.com/p/17b803d75a90
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞