1、linux中装软件的特点

linux中安装软件比windows中复杂。linux中安装软件一般有以下几种方法:
    第一种:在线安装。譬如ubuntu中使用apt-get install vim来安装vim软件。
    第二种:自己下载安装包来安装。这种方式的缺陷就是你不知道你下载的安装包和你的系统是否匹配。
    第三种:最装逼的一种方式,就是源代码安装。
    总结:我们安装交叉编译工具链(arm-linux-gcc)实际采用第二种安装方式。

2、s5pv210交叉编译工具链版本的选择

解压后形式: arm-2009q3(三星官方);解压前形式:arm-2009q3.tar.bz2

3、交叉编译工具链的安装步骤

步骤1:打开虚拟机,在/usr/local/下创建/usr/local/arm文件夹【注意需要用sudo才能创建,否则不能创建,如下图】

步骤2:先将安装包 arm-2009q3.tar.bz2从Windows中弄到ubuntu中去(此处使用共享文件夹)

步骤3:复制。在ubuntu中进入到/usr/local/arm/所在的目录, 通过命令sudo cp /mnt/hgfs/linuxshare/arm-2009q3.tar.bz2  ./将arm-2009q3.tar.bz2复制到arm目录下。

从上图可以看到,已经复制成功。【注意】这里需要使用sudo权限如上图操作,且需要特别注意格式,注意点号“.”后面需要有“/”,即用“./”表示当前目录。

步骤4:解压。复制结束之后,在/usr/local/arm/目录下使用tar -jxv命令解压安转包,解压指令如下:tar -jxvf arm-2009q3.tar.bz2。按回车键后让ubnutu自动安装直到安装完毕(真正的应用程序安装在/usr/local/arm/arm-2009q3/bin目录下),遇到一个问题,使用解压命令tar -jxvf arm-2009q3.tar.bz2无法解压成功,怎么办呢?解决方法:在解压命令前面加上sudo即可解决。解压成功的标志是,在arm目录下可以看到arm-2009q3这个文件夹,如下图:

到此为止交叉编译链已经安装成功,因为这是一个绿色软件,解压后可以直接使用。真正的应用程序的安装目录下(/usr/local/arm/arm-2009q3/bin)

【补充】使用命令:sudo su root 可以进入root权限

步骤5:到真正的应用程序的安装目录下(也就是/usr/local/arm/arm-2009q3/bin),进入目录看到如下:

上面看到的绿色的“arm-none-linux-gnueabi-gcc”便是交叉工具编译链,这是编写这个交叉工具编译链的创造者起的名字,但是为了方便我们习惯把它缩短一些,统称叫“arm-linux-gcc”,这也是后面会谈到的“为工具链创建arm-linux-xxx符号链接”

4、安装后的测试

安装完之后现在测试一下安装的交叉工具编译链能不能用。到目录/usr/local/arm/arm-2009q3/bin,执行一下安装的编译链
    执行方法是:./arm-none-linux-gnueabi-gcc -v

(说明:-v是参数,用来测试所安装的交叉工具编译链的版本)
    执行后可以得到一长串输出,其中有“gcc version 4.4.1 ”字样,即表示安装成功。

5、为工具链创建arm-linux-xxx符号链接

sudo进入管理员权限后  ln arm-none-linux-gnueabi-addr2line -s arm-linux-addr2line

【注意:上面用ln生成软连接是需要在管理员权限才可以】,生成的软连接(好比快捷方式)是左边蓝色一排

6、环境变量的意义

环境变量就是操作系统的全局变量。每一个环境变量对操作系统来说都是唯一的,名字和所代表的意义都是唯一的。linux系统可以有很多个环境变量。其中有一部分是linux系统自带的,还有一些是我们自己来扩充的。我们这里涉及到的一个环境变量是
    PATH。PATH这个环境变量是系统自带的,它的含义就是系统在查找可执行程序时会搜索的路径范围。

【注意】需要在root用户下,在根目录上使用 echo $PATH 查看路径

7、将工具链导出到环境变量

export PATH=/usr/local/arm/arm-2009q3/bin:$PATH
    在一个终端中执行以上命令后,该终端中就可以直接使用arm-linux-gcc了,但是只要关掉这个终端再另外打开一个立马就不行了。原因是我们本次终端中执行时的操作只是针对本终端,以后再打开的终端并未被执行过这个命令所以没导出。
    解决方案:如果要每次打开终端都可以看到这个环境变量,在~/.bashrc中,添加export PATH=/usr/local/arm/arm-2009q3/bin:$PATH 即可。
    注意:我们导出这个环境变量是在当前用户,如果你登录时在其他用户下是没用的。


【linux中的目录管理方法】我们习惯在/bin(根目录的bin)目录下目录放置一些【系统自带的用户使用】的应用程序,/sbin(根目录的sbin)目录下存放的是【系统自带的系统管理方面】的应用程序。如下两个截图分别是/bin和/sbin中的部分截取,只是为了让大家看清楚linux目录管理的方法.

那我们装软件放在哪里?一般都在/usr目录下。我们安装arm-linux-gcc,就在/usr/local/底下创建一个arm文件夹,然后装到将要安装的软件装在arm里面。之所以起名为arm是因为我们现在做的都是arm开发。

【linux】安装Linux的交叉编译工具链相关推荐

  1. hisi linux nptl.tar,hisiv100交叉编译工具链安装

    hisi交叉编译工具链安装 一.         摘要: 交叉编译简单的说,就是A机器上编译生成,运行在B机器上.那么在A机器上的编译工具安装,就是本文所要描述的内容. 工欲善其事必先利其器,所以交叉 ...

  2. linux环境变量、交叉编译工具链gcc

    ** linux环境变量 ** 1.linux环境变量 Linux 是一个多用户操作系统,每个用户都有自己专有的运行环境.用户所使用的环境由一系列变量所定义,这些变量被称为环境变量.系统环境变量通常都 ...

  3. 《Linux学习一》交叉编译工具链的构建工具Crosstool-ng

    索引 (一)下载与安装 (二)使用 (一)下载与安装 1.wget http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.25.0. ...

  4. 在ubuntu16.0403X64上安装海思交叉编译工具链

    博主原文如下:https://blog.csdn.net/m0_37182543/article/details/80315969 使用sudo apt-get install lib32z1,发现装 ...

  5. imx6ull项目也是封装成脚本安装 Poky 交叉编译工具链类似ATK-STM32MP157交叉编译

    [正点原子MP157连载]第六章 ATK-STM32MP157交叉编译篇 学习 2021-05-29 10:20887阅读 · 25喜欢 · 3评论 粉丝:17.3万文章:122 关注 正点原子提供了 ...

  6. 全手工制作arm-linux交叉编译工具链《一》-转

    全手工制作arm-linux交叉编译工具链 (Gcc 4.2.1 + Glibc 2.6.1 + Linux 2.6.22.6)<一> 作者:Garfield Trump 仅仅是本人在学习 ...

  7. NXP IMX6ULL的官方文档、官方BSP、交叉编译工具链下载

    目录 1 官网下载BSP以及相关文档 1.1 文档下载 1.2 NXP 官方uboot和kernel源码下载 1.3 官方评估板硬件资料下载 1.4 官方BSP下载 2 官网SDK下载 3 交叉编译工 ...

  8. arm hisiv100 linux,hisiv100交叉编译工具链安装

    hisi交叉编译工具链安装 一.         摘要: 交叉编译简单的说,就是A机器上编译生成,运行在B机器上.那么在A机器上的编译工具安装,就是本文所要描述的内容. 工欲善其事必先利其器,所以交叉 ...

  9. 【linux系统如何安装arm交叉编译工具链】

    文章目录 前言 一.arm交叉编译器介绍 命名规则 具体编译器 二.Arm GNU Toolchain安装 总结 前言 本文简要介绍arm交叉编译器及工具链的安装方法 一.arm交叉编译器介绍 命名规 ...

最新文章

  1. 好程序员分享做HTML5页面你要懂得这些
  2. go语言笔记——go环境变量goroot是安装了路径和gopath是三方包路径
  3. UML和模式应用学习笔记-1(面向对象分析和设计)
  4. iOS 设置button文字过长而显示省略号的解决办法
  5. 黑马 程序员——Java基础---流程控制
  6. android 整数与ip地址的转换
  7. ora-00054:resource busy and acquire with nowait specified解决方法
  8. Hbase Shell Filter 过滤
  9. Memcache 和 Radis 比较
  10. Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
  11. 201501006-构建之法:现代软件工程-阅读笔记
  12. 腾讯没有梦想,阿里没有盟友?
  13. 标识符——Python
  14. android获取textview的行数
  15. 如何设置二进制某一位的值_mysql参数设置--max_allowed_packet 值如何调整?
  16. Android友盟分享7.1.5版本巨坑
  17. Linux图形终端与字符终端
  18. 电脑重装系统蓝屏是什么原因
  19. 谷歌掐架甲骨文:揭秘Java侵权案始末
  20. 【Python】过滤表情字符

热门文章

  1. 小米机器人扫地机贴纸_小米扫地机亲测,真的好用
  2. 浅谈高大上的微信小程序中渲染html内容—技术分享
  3. 【人体骨骼点】数据集
  4. Scala開發教程(1): 開始神奇的Scala編程之旅
  5. mysql将查询结果作为临时表查询_mysql使用查询结果作为临时表
  6. AUTOSAR 通信栈配置
  7. 刘强东的代码水平如何?网友:95年一个晚上赚5万
  8. 透过赤子城中期财报:看国内社交出海迎来“分水岭”
  9. 百度竞价推广的真正意义是什么?
  10. 用mirai做机器人方法