gcc编译时报错 fatal error: stdio.h: 没有那个文件 解决方法

 

在linxu系统中,编写c语言程序我们需要使用到GCC编译器。但是当我们成功安装后使用的时候,编译程序,例如执行编译命令:

gcc hello.c -o hello.out

结果报错了,主要内容如下:

 fatal error: stdio.h: 没有那个文件或目录

compilation terminated.

如下图所示:

出些这样的问题,主要原因可能是因为修改软件下载源地址的时候没有考虑系统版本。选择了错误的系统版本,导致下载的gcc编译器不匹配。

解决办法如下:

1、查看系统代号

打开终端,输入下列命令:

lsb_release -a

然后结果如下图,Codename的值 focal 即为系统代号。我们先暂时记录该系统代号。

2、检查源地址系统代号是否正确

在终端中输入:

sudo gedit /etc/apt/sources.list

在弹出的文本编辑器中,检查源地址中的系统代号是否与第一步中的代号一致。

一般出现上述错误都是这里出了问题。只要把它修改为自己的系统代号问题就可以解决了。

3、修改源地址

我这里时bionic,所以应该为focal.

4、设置立即生效

在终端中,执行下面命令,使修改后立即生效,并且还可以检测修改有没有错。

sudo apt-get update

如下图,没有报错,说明修改没有问题。 

5、卸载原先下载的gcc

配置完成后,卸载原来已经安装的gcc,然后重新安装就可以使用了。

sudo apt-get remove gcc

6、安装gcc

sudo apt-get install gcc

 

版本正确后,下载gcc安装完成后,再次对c程序进行编译就不会出现错误了。

 

评论 34
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mumuwei_l

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值