ubuntu gcc的使用,ubuntu自带gcc吗

很多朋友对于ubuntu gcc的使用和ubuntu自带gcc吗不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

ubuntu下怎么安装arm-linux-gcc

1、将压缩包arm-linux-gcc-4.4.3.tar.gz存放在一个目录下,这个目录就是你等会解压缩的目录,以后这个目录就不能随便删掉了,我的存放路径是/home/song/software,如下图,记住这个路径,等会还会用到。

2、使用tar命令:tar zxvf arm-gcc-4.4.3.tar.gz将software文件夹下的arm-linux-gcc-4.4.3.tar.gz解压缩安装到当前目录下如下图

通过下图可以看到解压成功了,并且解压后的文件存放在了/home/song/software/opt/FriendlyARM/toolschain/4.4.3文件夹下,如下图所示,这个存放路径可得记住,如下图

3、接下来配置系统环境变量,把交叉编译工具链的路径添加到环境变量PATH中去,这样就可以在任何目录下使用这些工具。记下上一步中的安装路径,使用命令:vim/etc/profile编辑profile文件,添加环境变量。

在profile中最后一行添加: export PATH=$PATH:/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin这个路径就是那个bin目录所在的路径,可能你的不一样,按照你实际的目录填就可以了,如下图32行

编写完保存就好了

4、使用命令:source/etc/profile使环境变量生效

5、在终端上输入命令 arm-linux再按Tab键,可以显示出命令列表,说明环境变量设置成功了

6、使用命令:arm-linux-gcc-v会出现下面的错误提示:/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: exec:/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found

说是出现这种问题的原因是由于Ubuntu12.04用的是64位的,解决方法就是使用命令:sudo apt-get install ia32-libs装一些32位的库

7、待安装完32位的库之后,再使用命令:arm-linux-gcc-v,这一次就成功了

8、验证,编译一个hello.c文件

使用命令:arm-linux-gcc hello.c-o hello看是否编译成功

ubuntu之gcc、g++版本管理

在Ubuntu系统中管理gcc与g++版本对于不同C/C++项目的编译至关重要。不匹配的版本可能导致Cmake和make无法正常运行。

首先,我们需要查看当前的g++和gcc版本,以便了解系统中已安装的版本。通过运行相关命令,可以轻松获取这些信息。

接着,查看系统中已存在的gcc和g++版本目录,确保所使用版本符合项目需求。

为了确保安装与项目匹配的gcc和g++版本,我们需要添加源。通过添加合适的源,可以获取最新或特定版本的编译器。

安装对应项目的gcc和g++版本,确保在开发过程中使用正确的编译器版本。安装步骤通常涉及使用包管理器命令。

利用update-alternatives工具,可以支持在不同gcc和g++版本间进行切换,便于灵活管理系统的编译器版本。

另外,使用update-alternatives命令的--config选项,可以基于特定的配置在不同版本之间进行切换,确保编译环境的灵活性。

检查版本切换是否成功,确保系统已经正确使用了所需的gcc和g++版本。

在使用Linux进行C/C++编译时,还需注意两个常见问题:第一,有时需要显示地export gcc和g++的环境变量,以确保编译器版本生效。第二,每次执行cmake时,应先清除cmake的cache,然后重新编译,以避免出现重复错误。

在ubuntu系统中如何用GCC编译运行一个C程序

1、确定安装了gcc编译器后,接下来用vim编辑一个c文件。

2、下图是我在c文件中写入的内容,就简单打印一条语句。

3、写好c文件后,用ls命令查看该文件是否存在。

4、确定c文件存在后,使用命令gcc c文件名-o生成的可执行文件名(例:gcc demo.c-o demo)。输入编译命令后,如果没显示什么信息,就意味编译成功了。

5、编译成功后,再用ls命令查看一下可执行文件是否有生成。

6、最后再运行一下可执行文件,可以看到,正确输出了一条语句。

阅读剩余
THE END