精华内容
下载资源
问答
  • 什么是交叉编译器

    千次阅读 2020-06-06 23:58:38
    在 Linux 下进行 C 程序开发, 我们使用的 gcc 编译器进行代码的编译, 编译完, 直接在 X86 架构下的 PC 下运行的。...译器并且该编译器在 X86 架构下运行, 这个编译器我们通常称为交叉编译器。 ...

    在 Linux 下进行 C 程序开发, 我们使用的 gcc 编译器进行代码的编译, 编译完,
    直接在 X86 架构下的 PC 下运行的。 而 arm 架构的, 所以我们需要使用支持 arm 的编
    译器并且该编译器在 X86 架构下运行, 这个编译器我们通常称为交叉编译器。

    展开全文
  • 交叉编译器梗概交叉编译器听起来很玄乎,实则是类似于gcc的编译器,而且大多数情况下,其使用的命令也和gcc一致,语法一致,即你可以在gcc上编译的文件,在交叉编译器上也可以编译,这是用于编译运行在特定的设备上...

    最近需要碰到到Linux下的设备使用,需要使用交叉编译器,故在此记录下碰到的问题,以作经验。

    交叉编译器

    梗概

    交叉编译器听起来很玄乎,实则是类似于gcc的编译器,而且大多数情况下,其使用的命令也和gcc一致,语法一致,即你可以在gcc上编译的文件,在交叉编译器上也可以编译,这是用于编译运行在特定的设备上的程序的编译器,只不过不是在PC上。

    安装

    你得到的交叉编译器通常是一个压缩包,如果没有后缀名就在后面加上(.tar/.tar.gz),就可以打开压缩包,其编译的程序通常问arm-xxx-linux-gcc,在目录下的bin文件下,理应解压出来就可以在该目录下直接编译,但是在linux下你需要将该目录加入系统变量,否则其不视之为一个命令。

    增加系统参数

    方法一

    我第一次测试的时候使用了简易而不持续的方法,只可以在这个终端下有效。1export PATH=/usr/local/webserver/mysql/bin:$PATH //将当前目录增加到PATH路径中1echo $PATH //打印PATH路径

    如果看到如下界面就说明当前路径已经加入到PATH路径中。

    /usr/local/webserver/mysql/bin:/usr/local/webserver/mysql/bin/:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

    方法二1vim /etc/profile

    在最后,添加:1export PATH="/usr/local/webserver/mysql/bin:$PATH"

    保存,退出,然后运行:1source /etc/profile

    不报错则成功。

    Gcc多文件编译1gcc getop.c calcDemo.c -o output.out

    静态库生成(.a文件)

    编译c文件爱你,生成目标文件

    使用gcc/arm-xxx-linux文件编译c文件,得到.o文件1gcc -c file1.c file2.c

    这样就得到了file1.o file2.o文件

    归档目标文件,生成静态库1ar crv libmylib.a file1.o file2.o

    我们就得到了libmylib.a,这就是我们需要的静态库。

    上述命令中 crv 是 ar的命令选项:c 如果需要生成新的库文件,不要警告

    r 代替库中现有的文件或者插入新的文件

    v 输出详细信息

    通过 ar t libmylib.a 可以查看 libmylib.a 中包含的目标文件。

    可以通过 ar –help 查看更多帮助。

    注意:我们要生成的库的文件名必须形如 libxxx.a ,这样我们在链接这个库时,就可以用 -lxxx。

    反过来讲,当我们告诉编译器 -lxxx时,编译器就会在指定的目录中搜索 libxxx.a 或是 libxxx.so

    使用静态库文件1gcc test.c -L. -lmylib

    将会生成a.out,通过 ./a.out 可以运行该程序。说明我们的静态库能正常工作。

    上面的命令中 -L. 告诉 gcc 搜索链接库时包含当前路径, -lmylib 告诉 gcc 生成可执行程序时要链接 libmylib.a。

    展开全文
  • 交叉编译器实际目录

    2018-06-22 21:52:47
    linux环境下如何确定安装好交叉编译器 .,还有交叉编译器里面的格式大概就是arm-none-linux-gnueabi-,按TAb键就可以扩展的链接。
  • 亲测可用。 安装后可以在windows平台完成编译,编译后的程序运行在arm linux平台
  • 交叉编译器

    2018-10-25 11:06:01
    Linux交叉编译器arm-linux-gnueabi,4.6.3版本
  • arm-linux-gcc 4.4.3版本安装步骤 将压缩包arm-linux-gcc.tar.gz解压到arm-linux-gcc文件夹 tar zcvf arm-linux-gcc.tar.gz arm-linux-gcc 将创建目录 mkdir /home/linux/arm-linux-gcc 将解压后的文件拷贝到安装...
  • 如何安转交叉编译器什么:交叉编译就是在一个平台上生成另一个平台的可执行代码 比如我们在Windows系统编写c51代码编译生成xx.hex xx.hex是在c51上面运行,并不是在Windows上运行 stm32也是一样的 还比如我们在...

    交叉编译是什么?为什么要交叉编译?如何安转交叉编译器

    是什么:交叉编译就是在一个平台上生成另一个平台的可执行代码
    比如我们在Windows系统编写c51代码编译生成xx.hex
    xx.hex是在c51上面运行,并不是在Windows上运行
    stm32也是一样的
    还比如我们在Ubuntu上面编译树莓派上可执行的代码,如a.out
    是在树莓派上运行,并不是在Ubuntu linux上运行

    为什么要交叉编译?
    1、有时候目标平台上不允许、不能够安装我们需要的编译器,如C51
    2、目的平台资源匮乏,无法运行我们需要的编译器
    3、有时候目标平台还没有建立,连操作系统都没有,更谈不上什么编译器了

    树莓派交叉编译器的安装
    1、网址 https://github.com/raspberrypi/
    2、点击tool去下载tools-master.zip
    3、下载完成后去到压缩包所在的文件夹,用unzip命令解压文件
    4、进到目录里面找到我们所需要的编译器
    5、配置环境变量,这样我们在使用的时候就不用去寻找路径,使用起来也更加方便
    6、echo $PATH 显示环境变量
    export PATH= …games: …(pwd显示的路径)

    export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/tjl/lessonPI/toolsmaster/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin

    7、要想配置永久有效,就得去配置工作目录下的 .bashrc(这是一个隐藏文件)用来配置和命令终端的
    在这个文件里面把export PATH= …games: …(pwd显示的路径)加进去就可以了
    修改完之后运行 source .bashrc 令配置生效

    展开全文
  • arm-linux-gcc交叉编译器7.3.1,适用 ARM -A9 等ARMV7-32的硬件环境,在Linaro官网下载最新版。此编译器是GNU版,按照官网说法是跑应用程序,不是跑裸机,跑裸机的编译器我也上传到我的号了,可以下载
  • linux ESP32交叉编译器

    2018-05-04 10:25:44
    linux 32位下用于ESP32工程开发的交叉编译器,安装方法与普通交叉编译器类似
  • 在ubuntu上进行嵌入式的开发,我们大部分采用的是上位机进行交叉编译程序,移植到目标主机(下位机)进行运行,这时我们可以在qt上进行配置我们的交叉编译环境,然后在qt这个IDE上进行编写,编译,然后在下位机上运行...
  • gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.gz 已验证可用。
  • gcc交叉编译器

    2019-01-09 17:27:41
    GCC-LINARO的linux交叉编译器,2016年版本,arm-none-linux-gnueabi-gcc
  • 制作GCC交叉编译器

    2019-12-31 10:59:05
    本教程将详解如何在linux(构建系统)中构建一个交叉工具链, 可以运行在windows(主机系统)中, 但却为linux(目标系统)生成可执行文件elf.
  • Ubuntu下安装ARM交叉编译器
  • arm-linux-gcc交叉编译器7.2.1,适用 ARM -A9 等ARMV7-32的硬件,在Linaro官网下载,这里分数没办法设置为0
  • 树莓派官方交叉编译器

    热门讨论 2013-12-16 22:49:18
    树莓派官方交叉编译器,树莓派官网提供的下载链接服务器在国外太慢了,这边提供一个,方便国内玩家下载.为 bcm2708hardfp.
  • arm-linux-gcc交叉编译器

    2018-05-15 09:03:21
    arm-linux-gcc交叉编译器 arm-linux-gcc交叉编译器 arm-linux-gcc交叉编译器 arm-linux-gcc交叉编译器
  • 64位Linux的ARM交叉编译器

    热门讨论 2013-08-22 15:25:08
    想从android代码里提取出64位交叉编译器,结果编译内核报错,才发现提取出来的交叉编译器中大部分是64位的,可objcopy却是32位的,我想不通为什么。 我只能找个64位的objcopy代替,好不容易找到了,替换成64位的...
  • arm交叉编译器

    2018-11-10 17:27:52
    一款好用的arm交叉编译器
  • 交叉编译器简单地说,就是在一个平台上生成另一个平台上的可执行代码。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。 举例来说,我们常说的x86 Linux平台实际上是...
  • 交叉编译器安装

    2021-02-26 10:40:55
    1、下载解压交叉编译器 一般在usr/local/目录下创建一个arm文件夹,将下载好的编译器解压到该目录下。解压命令:tar zxvf 2、为交叉编译器添加环境变量 把交叉编译工具链的路径添加到环境变量PATH中去,这样就可以...

    1、下载解压交叉编译器
    一般在usr/local/目录下创建一个arm文件夹,将下载好的编译器解压到该目录下。解压命令:tar zxvf
    在这里插入图片描述

    2、为交叉编译器添加环境变量
    把交叉编译工具链的路径添加到环境变量PATH中去,这样就可以在任何目录下使用这些工具。使用命令:vim /etc/profile 编辑profile文件,添加环境变量。
    export PATH=$PATH:/usr/local/arm/4.4.1/bin/
    在这里插入图片描述
    添加完成后,使用命令source /etc/profile 使环境变量生效。

    3、测试安装结果
    运行arm-linux-gcc -v读取版本,如果找不到命令则表示系统位数(64)与编译器位数(32)对不上。
    执行如下命令解决问题:sudo apt-get install lib32ncurses5 lib32z1

    交叉编译器编译qt源代码:https://blog.csdn.net/weixin_42887343/article/details/114257126

    展开全文
  • 交叉编译器4.3.2版

    2018-12-16 16:55:44
    交叉编译器4.3.2版,解决JZ2440开发板执行交叉编译后的程序时由于交叉编译器版本太高而出现的Illegal instruction问题
  • mussel是当今可用于构建针对musl libc的交叉编译器的最短和最快的脚本。 特征 最新:使用最新可用的上游资源包 快速:可能是构建针对musl libc的交叉编译器的最快脚本,它完全用POSIX sh编写,并且完全在DASH下运行 ...
  • 文章目录ubuntu下安装交叉编译器(1)安装方法一(2) 安装方法二 ubuntu下安装交叉编译器 (1)安装方法一 打开ubuntu终端 使用sudo apt list gcc-arm*可以查看所有的交叉编译器,假设安装gcc-arm-linux-gnueabihf,...
  • gcc-linaro-6.3.1交叉编译器
  • ARM-Linux GCC 4.4.3交叉编译器符合EABI标准的交叉编译器, 彻底解决编译Qtopia2/Qt4时出现的"Segmentation Fault"问题
  • 在Linaro官网下载的交叉编译器。可以适用ARm-A53 64位的交叉编译器
  • 通常交叉编译器会安装在/usr/local下,这里首先新建一个文件夹 arm,用于存放交叉编译器,即目标板为arm平台的编译器,在超级终端中输入:mkdir /usr/local/arm 然后,cp /home/xxxx/Desktop/arm-linux-gcc-4.4.3...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 59,438
精华内容 23,775
关键字:

交叉编译器是什么