首页 > 编程知识 正文

gcc是什么(Ubuntu下对gcc、g 以及交叉编译器工具的理解)

时间:2023-05-05 15:41:19 阅读:122656 作者:921

在Ubuntu中理解gcc、g和交叉编译器工具@前言@gcc、g工具是什么? @X86体系结构在Ubuntu18.04上安装和使用gcc和g工具1;gcc工具2;安装和使用g工具: @ARM体系结构在Ubuntu18.04上安装gcc和g工具1;gcc工具安装和使用g工具: @使用交叉编译器编译交叉平台c和c代码1、安装和使用arm-linux-gcc交叉编译器2、安装和使用arm-linux-g交叉编译器

@前言

由于项目的需要,必须编译c、c代码以生成可执行文件。 在此过程中,我们学习了gcc、g和交叉编译器的下载1和使用方法。 根据我的理解,总结如下。 因为是浅学,如果有问题的话,请随时用信息订正。

@gcc,g工具是什么? 简而言之,gcc、g是生成可执行你的c、c等代码的文件(可由机器执行的机器码)。 gcc通常用于编译c代码,g用于编译c代码,但不限于此,gcc也可以编译c代码,g也可以编译c代码。 具体的gcc和g的区别请参考链接2

@X86体系结构Ubuntu18.04下的gcc和g工具X86体系结构Ubuntu18.04在windows10计算机虚拟机上运行。 1、gcc工具的安装与使用:安装gcc编译工具

使用max @ Ubuntu ://documents $ sudo apt-getinstallgcc创建. c文件

max @ Ubuntu :~~/documents $ touch main.c编辑main.c

在max @ Ubuntu :~~/documents $ gedit main.cmain.c文件中输入以下代码:

#include stdio.hint main () printf ) ' Helloworld! n '; 返回0; 使用gcc编译main.c文件

max @ Ubuntu : (/documents $ gcc main.c运行生成的a.out可执行文件(当前目录中缺省生成的文件名) ) ) ) ) ) ) )

max @ Ubuntu :~~/documents $./a.out输出:

职业介绍所世界!

2、g工具的安装和使用:安装gcc编译工具

在max @ Ubuntu ://documents $ sudo apt-getinstallg中创建. cpp文件

max @ Ubuntu :~~/documents $ touch main.CPP编辑main.CPP

在max @ Ubuntu :~~/documents $ gedit main.CPP main.CPP文件中输入以下代码:

#include stdio.hint main () printf ) ' Helloworld! n '; 返回0; }使用g编译main.cpp文件

max @ Ubuntu : (/documents $ gmain.CPP执行生成的a.out可执行文件(在当前目录中为缺省生成的文件名) () ) ) ) ) )

max @ Ubuntu :~~/documents $./a.out输出:

职业介绍所世界!

@ARM架构Ubuntu18.04下的gcc和g工具Arm架构Ubuntu18.04在Arm芯片的开发板上运行。 1、gcc工具的安装与使用:安装gcc编译工具

root @ Ubuntu :~~/documents $ sudo apt-getinstallgcc创建编辑. c文件与X86平台匹配…

结果如下。

职业介绍所世界!

2、安装和使用g工具:安装g编译工具

root @ Ubuntu :~/documents $ sudo apt-getinstallg创建编辑. cpp文件与X86平台匹配.

结果如下。

职业介绍所世界!

@交叉编译器实现跨平台编译c和c代码的功能是在不同的体系结构平台下实现代码的编译工作。 举个例子,现在我们在X86架构的Ubuntu下编写c或c代码,要直接在X86架构下的Ubuntu系统中编译ARM架构的Ubuntu可执行文件,我们的X86类型

ARM-linux-gcc/arm-linux-g交叉编译器在x86体系结构的Ubuntu(Linux )下实现代码arm体系结构可执行文件的编译。 1、arm-linux-gcc交叉编译器安装与使用安装arm-linux-gcc :

max @ Ubuntu ://documents $ sudo apt-getinstallgcc-arm-Linux-gnueabihf使用相同的main.c文件,并使用arm-linux-gcc

max @ Ubuntu ://documents $ arm-Linux-gnueabihf-gcc-o1main.c运行后的可执行文件

在max @ Ubuntu :~~/documents $./1中报告了错误!

bash :/1: cannotexecutebinaryfile : execformaterror这是因为编辑了可在ARM体系结构Ubuntu(Linux )中运行的文件,所以X86平台

1将文件复制到ARM板上并执行发现。

职业介绍所世界! 2、arm-linux-g交叉编译器安装与使用安装arm-linux-g :

max @ Ubuntu ://documents $ sudo apt-getinstallg-arm-Linux-gnueabihf使用相同的main.cpp文件,并使用arm-Linux-g进行编译

max @ Ubuntu ://documents $ arm-Linux-gnueabihf-g-O2 main.CPP执行后的可执行文件

max @ Ubuntu :~~/documents $./2出现错误!

bash :/2: cannotexecutebinaryfile : execformaterror这是由于编辑了可在ARM体系结构Ubuntu(Linux )中运行的文件,因此在X86平台上

2将文件复制到ARM板上并执行发现。

职业介绍所世界! 3、交叉编译器运行参考图X86架构平台上的运行接口:

ARM体系结构平台上的运行接口:

@参考文献才是浅学,如果有问题,请随时留言订正!

安装Ubuntu18.04arm-Linux-gcc交叉编译器

gcc和g是什么? 有什么区别?

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。