arm linux gcc交叉编译,arm-linux-gcc交叉编译器安装
在网上下载arm-linux-gcc-4.4.3.tar.gz。
1、解压#tar -zxvf arm-linux-gcc-4.4.3.tar.gz
2、打开解压目录,将FriendlyARM文件夹拷贝到文件夹usr/local/。
cd /usr/local/
cp -rv FriendlyARM /usr/local/
(交叉编译程序集都在/usr/local/arm/4.4.3/bin)
3、修改环境变量,将交叉编译器的路径加入到PATH。
方法一(未测过):修改/etc/bash.bashrc文件
#vi /etc/bash.bashrc
在最后加上:
export PATH=$PATH:/usr/local/FriendlyARM/toolschain/4.4.3/bin
export PATH
方法二(测试,无用):修改/etc/profile文件:
# vi /etc/profile
增加路径设置,在末尾添加如下,保存/etc/profile文件:
export PATH=$PATH:/usr/local/FriendlyARM/toolschain/4.4.3/bin
方法三:#export PATH=$PATH:/usr/local/FriendlyARM/toolschain/4.4.3/bin
其实,直接采用方法三即可。
4、立即使新的环境变量生效。
对应方法一(未测过):#source /root/.bashrc
对应方法二(未测过):# source /etc/profile
5、检查是否将路径加入到PATH:
# echo $PATH
显示的内容中有/usr/local/FriendlyARM/toolschain/4.4.3/bin,说明已经将交叉编译器的路径加入PATH。
6、测试是否安装成功
# arm-linux-gcc -v
显示arm-linux-gcc信息和版本。arm-linux-gcc成功安装。
7、小试牛刀。
vi下编写hello.c程序。
int main(){
printf("hello!\n");
return 0;
}
#arm-linux-gcc hello.c -o hello (与gcc hello.c -o hello使用方法一样)。
有如下错误:
/usr/local/FriendlyARM/toolschain/4.4.3/bin/../libexec/gcc/arm-none-linux-gnueabi/4.4.3/cc1: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/local/FriendlyARM/toolschain/4.4.3/lib/libppl_c.so.2)
/usr/local/FriendlyARM/toolschain/4.4.3/bin/../libexec/gcc/arm-none-linux-gnueabi/4.4.3/cc1: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/local/FriendlyARM/toolschain/4.4.3/lib/libppl.so.7)
原因:strings /usr/lib/libstdc++.so.6 | grep GLIBC,返回结果没有GLIBCXX_3.4.9,接着输入ls -l /usr/lib/libstdc++.so.6 ,结果为:
lrwxrwxrwx 1 root root 18 02-13 19:06 /usr/lib/libstdc++.so.6 -> libstdc++.so.6.0.8
libstdc++.so.6是个软链接,它链接到libstdc++.so.6.0.8。而libstdc++.so.6.0.8,没有`GLIBCXX_3.4.9'。版本过低。
解决办法:
一、网上下载libstdc++.so.6.0.10。放到/urs/lib目录下。
二、删除libstdc++.so.6。rm -rf /usr/lib/libstdc++.so.6。
三、重做libstdc++.so.6。软链接,ln -s /usr/lib/libstdc++.so.6.0.10 /usr/lib/libstdc++.so.6.
然后,重新输入#arm-linux-gcc hello.c -o hello。可以看到编译成功。运行#hello,"cannot execute binary file".
arm-linux-gcc编译的文件只能在arm开发板上运行,所以此处提示正确。
arm linux gcc交叉编译,arm-linux-gcc交叉编译器安装相关推荐
- ARM 交叉编译器安装
ARM 交叉编译器安装: 1. 交叉工具下载 下载链接: ARM-交叉编译工具 笔者下载的这一个:gcc-arm-none-eabi-10.3-2021.07-x86_64-linux.tar.bz2 ...
- 嵌入式ARM+Linux 多个不同版本的交叉编译器的切换方法
工欲善其事,必先利其器!软件工具的选择与使用,是开发人员必须重视的事情. 我这里在VM虚拟机安装的CentOS 6.5,开发编译基于ARM的嵌入式Linux,安装了几个版本的交叉编译器,以下是如何切换 ...
- 嵌入式ARM交叉编译器安装
1.开发平台 虚拟机:VirtualBox 操作系统:Ubuntu 16.04 64bit 2.准备ARM交叉编译工具包 编译uboot和linux kernel都需要ARM交叉工具链支持,这里使用L ...
- linux下mips裸机编译,裸机交叉编译器输入
裸机交叉编译器的输入限制是什么-因为它不编译带有指针或mallocs的程序-或任何需要比底层硬件更多的东西-.还有1如何找到这些局限性.. 我还想问一下-我为目标mips构建了交叉编译器..我需要使用 ...
- 高通linux系统交叉编译,【Linux】第三章 移植开源库
在开始移植前,默认已经下载好库文件并解压好 移植三部曲: ./configuer : 配置参数 make : 编译 make install : 安装 configure 配置参数说名 1 说明 在l ...
- linux glog 0.50版本 设置交叉编译器生成静态库
目标:设置glog的交叉编译器,生成静态库libglog.a: 步骤: (1)下载最新版本的glog源码,最新版本0.050(2021.08.23) https://github.com/google ...
- 海思sdk包以及交叉编译器安装
首先需要准备好海思交叉编译器和sdk包,ubuntu16.04 tar -xzvf arm-himix200-linux.tgz cd arm-himix200-linux/ 可以看到如下目录 可以查 ...
- linux ntpdate交叉编译,arm交叉编译ntpdate与服务器进行时间同步
1.ntp源码包:ntp-dev-4.3.91.tar.gz(可下载地址:http://www.ntp.org/downloads.html) 2.交叉编译工具:arm-linux-gnueabihf ...
- 查看linux 下交叉编译器安装目录,Linux下安装交叉编译工具链
安装目的 gcc经过编译后生成的可执行文件(最后也就是一大堆机器码)是在linux操作系统之上运行的,也就是说经过gcc编译器最后生成的一大堆机器码只有Linux操作系统认识,但是我们做ARM裸机实验 ...
最新文章
- 设计模式(十五):解释器模式
- python `__del__`
- 计算机术语列是,计算机术语-RAM ROM
- UVa 10394-Twin Primes
- MySQL 基准测试(sysbench)工具安装时提示 automake 1.10.x (aclocal) wasn‘t found, exiting
- 在Python中查找字符串长度
- Session 的几种存储方式及优缺点
- hdu-1173(最短距离)
- 极限与连续知识点总结_大一上学期《高等数学》知识整理-第一章 极限与连续...
- python生成正态分布矩阵_统计学习 | 矩阵正态分布 (matrix normal distribution)
- cesium雷达图_cesium添加闪烁点,雷达图(一般用于预警)
- JSOI2008 小店购物
- MATLAB 2018b 安装教程(图解)Mac Win Linux下均可安装
- 淘宝关键字搜索商品-v1
- linux下删除隐藏文件夹及子文件夹
- 网络信息安全管理要素和安全风险评估
- .blade.php,Blade 模板 |《Laravel 5.4 中文文档 5.4》| Laravel China 社区
- Ka的分治|归并排序,注释详尽
- 信贷反欺诈风险管理体系|附欺诈策略细则
- Python基础知识学习(一)——Python语言概述、安装、运行、变量、数据类型概述