suse linux下交叉编译,SUSE 10.1下交叉编译环境构建

作者:

下载或复制arm-linux-gcc-3.4.1.tar.bz2到任意的目录下,这个软件配套的书中有,没有的和我联系copy给大家。

书中介绍的crosstool制作工具的链的方法很好,但是很浪费时间,因为编译一次要数个小时,很是麻烦,也不适合初学这,这里的方法是书中3.2节提到的第一种方法,很简单,但是正如书中所说,不是自己定制的受到局限不是很理想,但对我们的开发这已经足够用了。建议大家还是先选用这种方法,至于自己制作的方法有兴趣的兄弟可以和我讨论哦!

1.复制arm-linux-gcc-3.4.1.tar.bz2到“/”目录

cp /mnt/hgfs/linux_tmp/arm-linux-gcc-3.4.1.tar.bz2

/ /mnt/hgfs/linux_tmp/是我的虚拟机和windows共享的目录,关于怎样和虚拟机共享文件,大家可以参考我的另一篇博文。

2.解压 arm-linux-gcc-3.4.1.tar.bz2

#tar -jxvf arm-linux-gcc-3.4.1.tar.bz2

解压过程需要一段时间,解压后的文件形成了 usr/local/arm/3.4.1/bin 文件夹,进入该文件夹

现在交叉编译程序集都在/usr/local/arm/3.4.1/bin下面了

3.修改环境变量,把交叉编译器的路径加入到PATH。

修改的目的:系统默认的gcc编译器是arm-linux-gcc而不是gcc了,这点要认识清楚

修改/etc/bash.bashrc文件

#vim /etc/bash.bashrc

在最后加上:

export PATH=$PATH:/usr/local/arm/3.4.1/bin export PATH

4.立即使新的环境变量生效,不用重启电脑:

#source /etc/bash.bashrc

5. 检查是否将路径加入到PATH:

# echo $PATH

显示的内容中有/usr/local/arm/bin,说明已经将交叉编译器的路径加入PATH。至此,交叉编译环境安装完成。

6.测试是否安装成功

mengyang:/ # arm-linux-gcc -v

上面的命令会显示arm-linux-gcc信息和版本,这是我显示的信息: mengyang:/ # arm-linux-gcc -v

Reading specs from /usr/local/arm/3.4.1/lib/gcc/arm-linux/3.4.1/specs

Configured

with:   /work/crosstool-0.27/build/arm-linux/gcc-3.4.1-glibc-2.3.2/gcc-3.4.1/configure

--target=arm-linux

--host=i686-host_pc-  linux-gnu

--prefix=/usr/local/arm/3.4.1

--with-headers=/usr/local/arm/3.4.1/arm-linux/include

--with-local-  prefix=/usr/local/arm/3.4.1/arm-linux

--disable-nls

--enable-threads=posix

--enable-symvers=gnu

--enable-__cxa_atexit

--enable-languages=c,c++

--enable-shared

--enable-c99

--enable-long-long

Thread model: posix

gcc version 3.4.1

7.编译Hello World程序,测试交叉工具链

写下下面的Hello World程序,保存为 hello.c

#include

int main(void)

{

printf("Hello Arm Linux Gcc!\n");

return 0;

}

执行下面的命令:

# arm-linux-gcc -o hello hello.c

有时会有如下的警告:

warning: no newline at end of file

英文的意思就是说文末没有换行符。Unix文档的回车换行符是一个字符\n,Windows的是分别的两个\n\r,所以你在Windows下编辑的最后一个字符是\r不是\n,所以编译器以为有错误。在文件最后补一个新行即可。

源程序有错误的话会有提示,没有任何提示的话,就是通过了,就可以下载到ARM目标板上运行了!

接着可以输入file hello的命令,查看生成的hello文件的类型,要注意的是生成的可执行文件只能在ARM体系下运行,不能在其于X86的PC机上运行。

想要在PC机linux上运行,只需执行如下命令:

gcc hello.c -o hello

./hello

显示打印结果

至此嵌入式的开发环境搭建完毕,希望可以帮助大家!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/300958.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

拖延的本质是逃避!| 今日最佳

全世界只有3.14 % 的人关注了青少年数学之旅(图源网络,侵权删)扎心了↓ ↓ ↓

msn VS QQ

彻底不再使用QQ只用msn了。使用msn就像进入森林,安静悠闲,没有束缚。 转载于:https://www.cnblogs.com/yanrongpi/articles/372558.html

linux 查询系统性能,Linux 系统各种性能查询

几个cpumore /proc/cpuinfo |grep "physical id"|uniq|wc -l每个cpu是几核(假设cpu配置相同)more /proc/cpuinfo |grep "physical id"|grep "0"|wc -lcat /proc/cpuinfo | grep processor1. 查看物理CPU的个数#cat /proc/cpuinfo |grep "ph…

C# 无意间写了一段线程死锁的代码

源码如下&#xff1a;private void action_Click(object sender, RoutedEventArgs e){Task t new Task(() >{for (int i 0; i < 10; i){Thread.Sleep(1000);this.Dispatcher.Invoke(() >{lblStr.Content i.ToString();});manualResetEvent.Set();Console.WriteLine…

ZT:利用Google搜索功能来突破封锁下载

搜索Google大家都用过吧&#xff1f;我们正是利用它强劲的搜索功能来突破封锁下载&#xff0c;Google搜索和限制下载有什么关系&#xff0c;没可能实现吧&#xff1f;不要不相信哦&#xff0c;往下看哦&#xff01; 首先打开Google&#xff0c;在关键词输入框中输入“ "in…

PHP文件 字符集编码!

大家在用一些编辑器写PHP时&#xff0c;不会自动出现文件头&#xff0c;此时说明字符集编码需要如下代码&#xff1a; <?php header("content-type:text/html;charsetutf-8"); ?> utf-8国际通用编码。转载于:https://www.cnblogs.com/szlhtljt/p/3283007.htm

5G已来,你能做些什么?

5G大潮虽然已经来临&#xff0c;即便没有5G手机&#xff0c;小木还是要不甘示弱地测一下自己的网速&#xff0c;假装自己也是可以美美地在网上冲浪的&#xff01;小木的网速网友提供的5G测速多么痛的领悟&#xff0c;这差距还真的是很大&#xff01;说了这么多&#xff0c;你可…

java得到文件创建时间linux,linux java获取文件创建时间

linux java获取文件创建时间[2021-01-31 07:35:22] 简介:服务器背景有时候我们需要获取文件的创建时间。例如:我在研究 《xtrabackup 原理图》的时候&#xff0c;想通过观察确认 xtrabackup_log 是最php去除nbsp的方法&#xff1a;首先创建一个PHP代码示例文件&#xff1b;然后…

(转)提问的智慧

How To Ask Questions The Smart Way)这篇文章可以说是经典了&#xff0c;时不时的回头再读读&#xff0c;总有启发 Copyright (C) 2001 by Eric S. Raymond 中文版Copyleft 2001 by D.H.Grand(nOBODY/Ginux) 英文版&#xff1a;http://www.tuxedo.org/~esr/faqs/smart-questio…

认识WPF

新开一节WPF桌面开发的讲解&#xff0c;这节先初步认识一下什么是WPF。1.简介WPF是 Windows Presentation Foundation 的英文缩写&#xff0c;意为“窗体呈现基础”&#xff0c;是微软基于.NET Framework 3.0 推出的新一代构建窗体程序的框架。不同于WinForm&#xff0c;WPF实现…

MFC Attach()函数和Detach()函数

一、Windows对象和MFC对象的区别&#xff1f;MFC对象实际上并没有把整个Windows对象都包装在其中。对于窗口&#xff1a;MFC对象它只是有一个窗口句柄而已&#xff0c;这个窗口句柄如果指向一个实际存在的窗口对象&#xff08;窗口对象&#xff0c;也就是WNDCLASS&#xff0c;是…

用“谬论”指挥研究方向数十年,是谁让“老年痴呆”至今仍是绝症?

全世界只有3.14 % 的人关注了青少年数学之旅阿尔兹海默症&#xff0c;是“老年痴呆”的正确科学名称。它可能是世界上最广为人知的“绝症”之一&#xff1a;不仅让患者丧失了记忆和自我&#xff0c;也一直令在寻找治疗方法的学者和医药企业束手无策。30 多年前出现的“淀粉样蛋…

linux改环境语言,linux下改变语言环境

1、查看当前语言变量值$ locale2、查看系统内安装的语言$ locale -a3、临时修改语言值$ export LC_ALLen_US.UTF-8$ export LANGUAGEen_US:en$ export LC_ALLzh_CN.UTF-8$ export LC_ALLzh_CN.GB18030$ export LANGUAGEzh_CN:zh:en_US:en4.1、永久修改系统的语言值修改文件/etc…

杀毒软件

俗话说&#xff0c;每天打雁&#xff0c;结果被雁x了……不慎中了Trojan-PSW.Win32.QQPass.gf木马根据目前的测试&#xff0c;瑞星&#xff0c;Macfee&#xff0c;毒霸都没有能查出来这个木马只好手工删了。转载于:https://www.cnblogs.com/skogkatt/archive/2006/05/04/416321…

NLog源码解读——StringBuilderPool

刚刚骚情的跑了下NLog测试&#xff0c;&#xff0c;&#xff0c;&#xff0c;&#xff0c;一篇文章就那么Crash了~~~好吧&#xff0c;这次简化下&#xff0c;直接进入正题&#xff0c;有关GC的东东参考网上大部分文章吧。源码分析// StringBuilder 的建立也会耗费大量的资源&am…

oracle 11g(二)安装过程

(一)解压oracle 11g压缩包注&#xff1a;分别下载oracle 11g的1of2、2of2这两个zip压缩包&#xff0c;将其拷贝到/usr/src目录中解压。[rootserver src]#unzip linux.x64_11gR2_database_1of2.zip[rootserver src]#unzip linux.x64_11gR2_database_2of2.zip(二)安装oracle 11g以…

一定要多角度看事物 | 今日最佳

全世界只有3.14 % 的人关注了青少年数学之旅一定要多角度看事物岁月对我们做了什么无法反驳论发型的重要性坐骨神经痛被赋予了新含义老师真的很会总结了&#xff08;图源E_Volution_&#xff09;扎心了↓ ↓ ↓

从别的地方转来的 网址

网上24个免费图书网站[转贴] 中国数字图书馆 http://www.d-library.com.cn/ ; 权威的在线图书馆。 瑞德超星在线图书馆 http://www.rol.cn.net/library ; 规模大&#xff0c;藏书丰富&#xff0c;包括社会科学、人文科学、自然科学等领域的著作和历史文献等。 可是…下载图书要…

烧录imx6需要的linux空间,IMX6Q学习笔记——开发板的Linux系统更新和烧录

IMX6Q学习笔记——开发板的Linux系统更新和烧录记录自己在电鱼电子开发SAIL-IMX6Q全能板后&#xff0c;并且对系统和模块进行简单测试的过程之后对开发板的Linux系统进行更新和烧录的记录过程&#xff0c;算是进行一个分享和记录&#xff0c;同时也方便自己日后查阅。首先准备好…

ABP Framework:移除 EF Core Migrations 项目,统一数据上下文

原文&#xff1a;Unifying DbContexts for EF Core / Removing the EF Core Migrations Project[1]导读&#xff1a;软件开发的一切都需要平衡在 ABP Framework V4.4 RC 新增功能介绍 中&#xff0c;对应用程序启动解决方案模板做了一个重要改变&#xff1a;删除 EntityFramewo…