新人初见ubuntu问题之(一)gcc编译不了c语言
遇到的问题
gcc hello.c
hello.c:1:19: fatal error: stdio.h: 没有那个文件或目录
#include <stdio.h>
^
compilation terminated.
检查源代码
#include <stdio.h>
int main(void)
{
printf("hello!\n");
return 0;
}
源代码没有错误。
sudo apt-get install build-essential
报错。
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:
下列软件包有未满足的依赖关系:
build-essential : 依赖: libc6-dev 但是它将不会被安装 或
libc-dev
依赖: g++ (>= 4:4.4.3) 但是它将不会被安装
依赖: dpkg-dev (>= 1.13.5) 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
百度搜索,源的问题。
切换源
https://www.cnblogs.com/mliudong/p/4217945.html
sudo apt-get install build-essential
返回信息:
update-alternatives: 使用 /usr/bin/g++ 来在自动模式中提供 /usr/bin/c++ (c++)
正在设置 build-essential (12.4ubuntu1) …
正在处理用于 man-db (2.8.3-2ubuntu0.1) 的触发器 …
正在处理用于 libc-bin (2.27-3ubuntu1) 的触发器 …
重新编译
$ gcc hello.c
$ ll
总用量 24
drwxr-xr-x 2 weiconglin weiconglin 4096 6月 15 12:19 ./
drwxr-xr-x 4 weiconglin weiconglin 4096 6月 14 23:24 …/
-rwxr-xr-x 1 weiconglin weiconglin 8304 6月 15 12:19 a.out*
-rw-r–r-- 1 weiconglin weiconglin 72 6月 14 23:37 hello.c
$ ./a.out
hello!
编译成功!!!