snmp++ linux 编译出错_crosstool-ng编译交叉工具链

一、准备工作

  1. 建立工作文件夹image

2.下载crosstool-ng

git clone https://github.com/crosstool-ng/crosstool-ng
4184fa5901d00fe9f46c598b0da3de8d.png

image


crosstool-ng的环境需要libncurse5-dev

sudo apt-get install libncurse5-dev

3.安装

安装autoconf:  sudo apt-get install autoconf进入crosstool-ng目录,执行./bootstrap,生成 configure 执行文件检查安装环境,报什么错,就安装什么软件:
./configure --prefix=pwd/crosstool

需要的软件有:sudo apt-get install gperf bison flex texinfo help2man gawk

执行命令 make
执行命令 make instal
export PATH="${PATH}:pwd/crosstool/bin"

二、编译链制作

1.根目录下建立三个文件夹

mkdir src x-tools crosstool

进入crosstool目录:

cd ~/.crosstool

执行:ct-ng list-samples
df82e0bfb54f65f1c38b2ed7e821fcfe.png

image

ct-ng show-arm-cortexa9_neon-linux-gnueabihf
b664cae5e273b0d658863c6f531e72bb.png

image

ct-ng arm-cortexa9_neon-linux-gnueabihf
5163e88088985e19260b02107c45c891.png

image

ct-ng menuconfig

Target options --->   从datasheet中的 BLOCK DIAGRAM 中可以看到
*** Target optimisations ***
(armv7-a) Architecture level :指令集架构,exynos4412为armv7-a架构,-march=name
(cortex-a9) Emit assembly for CPU :CPU核心类型, -mcpu=name
(cortex-a9) Tune for CPU:对CPU的优化,具体可以查看芯片手册,-mtune=name

这些参数都可以gcc里面对应,man gcc然后查找关键字即可

工具链的分类:http://blog.csdn.net/ccskyer/article/details/16864173

kernel下载:https://www.kernel.org/pub/linux/kernel/v4.x/

gcc-linaro下载:http://releases.linaro.org/components/toolchain/binaries/6.3-2017.02/

其他工具下载:http://ftp.gnu.org/gnu/

执行编译命令:ct-ng build,开始进行工具链的构建:

37ee0acc0532ef802205b1b28af43483.png

image

2. 编译完成

6421d081ea76719fefec1bffc7185ec9.png

image

ls ~/x-tools/arm-cortexa9_neon-linux-gnueabihf/
a4d1de0acbc6e8fbddd06b7bcc70b60b.png

image

建立环境变量:

PATH=~/x-tools/arm-cortexa9_neon-linux-gnueabihf/bin:$PATH/arm-cortexa9_neon-linux-gnueabihf-gcc -v
e3cd730ca9ef5585d4c2ae1a3c8140e5.png

image

3.编译内核

make ARCH=arm CROSS_COMPILE=arm-cortexa9_neon-linux-gnueabihf- exynos_defconfig
7f232fd962ec58261b108dc027341cb4.png

image

exynos_defconfig是内核自带的配置文件,具体目录在 /arch/arm/config/ 目录中
make ARCH=arm CROSS_COMPILE=arm-cortexa9_neon-linux-gnueabihf- zImage modules
766c874bddfe7cf613bc457a3d218b2b.png

image

三、报错

1. build failed int step 'Retrieving needed toolchain components' tarballs'

13d1f5fbd1a7594ce93441dccbf72c20.png

image

查看log可知道,isl下载出错,进行手动下载:http://isl.gforge.inria.fr/

然后重新编译。

gcc-linaro-6.3-2017.02.tar.xa:http://releases.linaro.org/components/toolchain/gcc-linaro/6.3-2017.02/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值