配置交叉编译工具链和环境变量

  • 1 设置交叉编译工具链
    • 1.1 永久生效
    • 1.2 临时生效
    • 1.3 手动指定
  • 2 测试交叉编译工具链
    • 2.1 测试环境变量
    • 2.2 测试交叉编译器
  • 3 如何添加交叉编译工具链(toolchain)到环境变量?(--sysroot路径)(新:ubuntu交叉编译工具链环境变量的配置)

原文链接:https://blog.csdn.net/qq_56926420/article/details/122890366

1 设置交叉编译工具链

交叉编译工具链用来在Ubuntu主机上编译应用程序,而这些应用程序是在ARM等其他平台上运行。
设置交叉编译工具主要是设置PATH, ARCH和CROSS_COMPILE三个环境变量,下面介绍具体设置方法。
设置这3个环境变量有多种方法,任意选择其中一种方法即可,建议使用“永久生效”的方法。录制视频时我会使用多种开发板,所以在视频里我总是使用“临时生效”的方法。

库环境变量设置:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

export LD_LIBRARY_PATH=/usr/local/X11/lib:$LD_LIBRARY_PATH/

1.1 永久生效

如需永久修改,请修改用户配置文件。
注意:如果不会使用vim命令,可以使用图形化的编辑工具,执行:gedit ~/.bashrc
vim ~/.bashrc

(1)
在行尾添加或修改,加上下面几行(第3行第4行为一行命令):

export ARCH=arm
export CROSS_COMPILE=arm-buildroot-linux-gnueabihf-
export PATH=$PATH:/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
设置完毕后,要执行  source  ~/.bashrc 命令使其生效,这条命令是加载这些设置的环境变量。

设置完毕后,要执行 source ~/.bashrc 命令使其生效,这条命令是加载这些设置的环境变量。

book@100ask:~$ source  ~/.bashrc
book@100ask:~$ arm-buildroot-linux-gnueabihf-gcc -v

1.2 临时生效

也可以手工执行“export”命令设置环境变量,该设置只对当前终端有效(另开一个终端需要再次设置)。
(1)
执行以下3个命令,第3个命令很长,需要包含第四行全部复制:

book@100ask:~$ export ARCH=arm
book@100ask:~$ export CROSS_COMPILE=arm-buildroot-linux-gnueabihf-
book@100ask:~$ export PATH=$PATH:/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin

1.3 手动指定

先设置PATH环境变量,然后在make编译时指定ARCH架构 CROSS_COMPILE交叉编译工具链(执行make命令时指定的参数,只对当前命令有效;下次执行make时仍需要再次指定那些参数)。
(1) 示例

book@100ask:~$ export PATH=$PATH:/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
book@100ask:~$ make  ARCH=arm CROSS_COMPILE=arm-buildroot-linux-gnueabihf-book@100ask:~$ export PATH=$PATH:/home/book/100ask_imx6ull-sdk/ToolChain/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin
book@100ask:~$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-

2 测试交叉编译工具链

2.1 测试环境变量

book@100ask:~$ echo $ARCH
arm
book@100ask:~$ echo $CROSS_COMPILE
arm-buildroot-linux-gnueabihf-

2.2 测试交叉编译器

执行以下命令,结果见后图:

book@100ask:~$ arm-buildroot-linux-gnueabihf-gcc -v


(1).
配置环境变量一:
使用export命令直接修改PATH的值,
如交叉编译工具链安装完后,

执行以下命令或者执行
export PATH=$PATH:/opt/hisi_linux/x86-arm/arm-himix100-linux/bin
说明:/opt/hisi_linux/x86-arm/arm-himix100-linux/bin为编译安装的目录


(2).配置环境变量二:
通过修改用户目录下的~/.bashrc文件进行配置:
在行尾添加或修改,加上下面一句

export PATH=$PATH:/opt/hisi_linux/x86-arm/arm-himix100-linux/bin
设置完毕后,要执行 source  ~/.bashrc 命令使其生效,这条命令是加载这些设置的环境变量。

环境变量配置方法:
直接定义

export

Shell 配置文件
与 Bash Shell 有关的配置文件主要有

/etc/profile
~/.bash_profile
~/.bash_login
~/.profile
~/.bashrc
/etc/bashrc
/etc/bash.bashrc
/etc/profile.d/*.sh
Shell 执行顺序
/etc/profiles->/.profile(/.bash_profile、~/.bash_login)

修改配置文件
全部用户、全部进程共享:/etc/bash.bashrc

一个用户、全部进程共享:~/.bashrc

shell启动方式对变量的影响
子shell进程中执行:/bin/bash会创建shell子进程和./

当前进程中执行:source和.


3 如何添加交叉编译工具链(toolchain)到环境变量?(–sysroot路径)(新:ubuntu交叉编译工具链环境变量的配置)


https://dontla.blog.csdn.net/article/details/120643642?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1-120643642-blog-122890366.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1-120643642-blog-122890366.pc_relevant_default&utm_relevant_index=2

配置交叉编译工具链和环境变量相关推荐

  1. 制定交叉编译工具_配置交叉编译工具链-嵌入式Linux

    注意:使用我们提供的Ubuntu映象文件时,请按照我们的目录结构,手动设置交叉编译工具链以及编译的架构环境变量配置,(建议配置为永久生效),这里我们提供了两种交叉编译工具链,分别是buildroot构 ...

  2. 配置交叉编译工具链-嵌入式Linux

    在线课堂:https://www.100ask.net/index(课程观看) 论  坛:http://bbs.100ask.net/(学术答疑) 开 发 板:https://100ask.taoba ...

  3. 如何添加交叉编译工具链(toolchain)到环境变量?(--sysroot路径)(新:ubuntu交叉编译工具链环境变量的配置)

    文章目录 查看当前环境变量 `echo $PATH` 添加环境变量 --sysroot 新:ubuntu交叉编译工具链环境变量的配置(20220105) 查看当前环境变量 echo $PATH [ro ...

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

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

  5. arm-linux交叉编译工具链的制作(基于S3C2440)【转】

    本文转载自:http://eric-gao.iteye.com/blog/2160622 制作arm-linux交叉编译工具链一般通过crosstool工具或者crosstool-NG,前者使用方便, ...

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

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

  7. 交叉编译工具链的设置和命名规则

    一. 交叉编译工具的命名规则 arch [-vendor] [-os] [-(gnu)eabi] [-gcc] arch:体系架构,比如ARM.X86 vendor:工具链供应商 OS:目标操作系统, ...

  8. 制定交叉编译工具_交叉编译工具链的制作

    交叉编译工具链的制作 前言及准备 本笔记制作的交叉编译工具已通过简单验证,对初次有需求需要搭建交叉工具链有一定的指导意义,制作工具链比较耗时,需做好花费一整天时间的准备. 资料学习链接 linux工具 ...

  9. 交叉编译工具链的制作

    交叉编译工具链的制作 前言及准备 本笔记制作的交叉编译工具已通过简单验证,对初次有需求需要搭建交叉工具链有一定的指导意义,制作工具链比较耗时,需做好花费一整天时间的准备. 资料学习链接 crossto ...

  10. 龙芯交叉编译环境搭建之交叉编译工具链配置

     龙芯交叉编译环境搭建之 交叉编译工具链配置 1 概括 本文档适用于龙芯3A3000/4000 UEFI代码编译,重点指导交叉编译环境的搭建方法,对系统安装不做介绍. Ubuntu系统(版本为ubun ...

最新文章

  1. 她是985高校的90后博导!常被认成“师姐”,喜欢减压式教学
  2. [Redis源码阅读]redis持久化
  3. 网页设计简约_简约设计指南
  4. 简述dijkstra算法原理_Dijkstra算法之 Java详解
  5. application/json 四种常见的 POST 提交数据方式
  6. c++ primer随笔
  7. java生成和识别二维码
  8. vs:严重性代码说明项目文件行错误LNK1168无法打开testes.exe进行写入
  9. UIView 不规则剪裁
  10. iOS开发中,实现本地推送
  11. c++程序无法进入断点的原因
  12. cuda和cudnn下载地址
  13. 五子课堂---第一课(连珠基础一)
  14. SpringBoot整合Swagger2,并设置springsecurity放行和token
  15. 开关电源个人总结(电感部分与滤波电容)
  16. 源中瑞区块链baas平台一站式服务体系
  17. python中rect用法_pyGame中rect对象的方法解释,pygame,Rect,详解
  18. 装备仿真模拟推演训练系统软件
  19. 在Keil MDK编译环境下使用UEstudio编写程序
  20. php 如何获取真实的客户端ip

热门文章

  1. C语言 - 详解回调函数
  2. 电脑中如何添加环境变量
  3. 数学魔鬼表达式——第二天
  4. Tomcat修改端口号图文详解
  5. 基于R语言GD包的Risk Map制作(批量生成)
  6. js 生成二维码并点击下载
  7. 8uftp cuteftp,8uftp cuteftp之间的差别
  8. ios弱网测试_弱网测试方法整理
  9. 面试官的窒息逼问:2021最全的接口测试面试题及参考答案
  10. 数值分析--第二章--追赶法