第一部分:环境准备
在开始之前,你需要一个可工作的 Ubuntu 14.04 系统,由于系统老旧,强烈建议你使用一个虚拟机(如 VirtualBox)来安装,避免影响你当前的操作系统。

更新系统
打开终端(快捷键 Ctrl+Alt+T),首先更新软件包列表和已安装的软件:
sudo apt-get update sudo apt-get upgrade -y
安装 C 语言编译器
Linux 上最标准的 C 语言编译器是 GCC (GNU Compiler Collection),你需要安装 build-essential 这个元数据包,它会自动安装 GCC、G++ (C++ 编译器) 以及 make 等构建工具。
sudo apt-get install build-essential -y
安装完成后,你可以验证一下 GCC 是否安装成功:
gcc --version
你应该能看到类似下面的输出,显示 GCC 的版本信息(在 14.04 上通常是 4.8.x 版本)。

安装文本编辑器或 IDE
你可以选择使用简单的命令行编辑器,也可以安装图形化的集成开发环境。
选项 A: 简单的命令行编辑器
- Vim: 强大的模态编辑器,需要学习成本。
sudo apt-get install vim -y
- Nano: 对新手非常友好的简单编辑器。
sudo apt-get install nano -y
选项 B: 图形化 IDE (推荐新手)
- Geany: 轻量级、快速的 IDE,集成了编辑、编译、运行功能,非常适合初学者。
sudo apt-get install geany -y
- Code::Blocks: 另一个流行的开源 C/C++ IDE。
sudo apt-get install codeblocks -y
- Eclipse CDT: 功能非常强大的 IDE,但相对笨重,适合大型项目。
sudo apt-get install eclipse -y
第二部分:编写你的第一个 C 程序 (Hello, World!)
我们将使用最经典的 hello.c 程序来演示。

创建源文件
使用你选择的编辑器创建一个名为 hello.c 的文件。
-
使用 Nano:
nano hello.c
-
使用 Vim:
vim hello.c
在打开的编辑器中,输入以下代码:
#include <stdio.h>
int main() {
printf("Hello, Ubuntu 14.04!\n");
return 0;
}
代码解释:
#include <stdio.h>: 包含标准输入输出库,这样我们才能使用printf函数。int main(): 这是 C 程序的入口点,程序从这里开始执行。printf(...): 在控制台打印一行文本。return 0;: 表示程序正常结束。
保存并退出编辑器:
- 在 Nano 中: 按
Ctrl+X,然后按Y,最后按Enter。 - 在 Vim 中: 按
Esc,然后输入wq,最后按Enter。
编译程序
使用 GCC 编译器将 hello.c 转换为可执行的机器码,在终端中运行以下命令:
gcc hello.c -o hello
命令解释:
gcc: 调用 GCC 编译器。hello.c: 你的源文件。-o hello: 指定输出的可执行文件名为hello,如果不写-o,默认会生成一个名为a.out的文件。
如果编译成功,终端不会有任何提示,但你会发现在当前目录下多了一个名为 hello 的文件,你可以用 ls 命令查看:
ls -l
你会看到类似 -rwxr-xr-x 1 user user ... hello 的输出,x 权限表示它是一个可执行文件。
运行程序
在终端中,通过以下命令来运行你刚刚创建的程序:
./hello
告诉终端在当前目录下寻找这个可执行文件,你应该能看到输出:
Hello, Ubuntu 14.04!
恭喜!你已经成功在 Ubuntu 14.04 上编译并运行了你的第一个 C 程序。
第三部分:进阶主题
调试程序
当程序出现 bug 时,你需要调试器。GDB (GNU Debugger) 是 Linux 下最标准的调试工具。
步骤 1: 生成带调试信息的可执行文件
在编译时加上 -g 标志,这样 GCC 会在可执行文件中包含调试信息。
gcc -g hello.c -o hello_debug
步骤 2: 启动 GDB
gdb ./hello_debug
你会进入 GDB 的交互式命令行界面 (gdb)。
一些常用的 GDB 命令:
run(或r): 运行程序。break main(或b main): 在main函数入口处设置一个断点。next(或n): 执行下一行代码(不进入函数内部)。step(或s): 执行下一行代码,如果遇到函数则进入函数内部。print 变量名(或p 变量名): 打印变量的值。continue(或c): 继续运行程序,直到下一个断点或程序结束。quit(或q): 退出 GDB。
使用 Makefile 进行项目管理
当你的项目文件变多时,每次手动输入 gcc 命令会变得很麻烦。Makefile 可以自动化这个过程。
创建一个名为 Makefile 的文件(注意没有后缀名):
# Makefile for hello project
# 定义变量
CC = gcc
CFLAGS = -Wall -g
TARGET = hello
SRCS = hello.c
# 默认目标
all: $(TARGET)
# 链接规则
$(TARGET): $(SRCS)
$(CC) $(CFLAGS) -o $@ $^
# 清理规则
clean:
rm -f $(TARGET)
.PHONY: all clean
Makefile 解释:
CC = gcc: 定义一个变量CC,值为gcc。CFLAGS = -Wall -g: 定义编译选项,-Wall开启所有警告,-g包含调试信息。all: $(TARGET):all是默认目标,它的依赖是$(TARGET)(即hello)。$(TARGET): $(SRCS): 这是hello的构建规则,它依赖于$(SRCS)(即hello.c)。 代表目标(hello),$^代表所有依赖(hello.c)。clean: 一个伪目标,用于清理编译生成的文件。
你只需要在终端中运行 make 命令,它就会自动读取 Makefile 并编译程序:
make
运行 make clean 可以删除生成的可执行文件:
make clean
第四部分:重要提醒与升级建议
Ubuntu 14.04 的严重警告
Ubuntu 14.04 "Trusty Tahr" 已经于2025年4月停止支持。
这意味着:
- 安全漏洞: 你不会再收到任何安全更新,你的系统极易受到攻击。
- 软件过时: 你无法安装现代的软件包,包括新版本的 GCC、Python、Node.js 等。
- 硬件兼容性: 缺少对新硬件的支持。
- 社区支持: 很少有人再会为这个版本提供帮助。
强烈建议你不要将 Ubuntu 14.04 用于任何生产环境或连接到互联网的设备。
如何升级?
如果你只是想学习和体验,那么虚拟机是很好的选择,如果你需要一个现代、安全且受支持的环境,请考虑升级你的系统:
- 升级到最新的 LTS 版本: 推荐升级到 Ubuntu 22.04 LTS,这是一个长期支持版本,安全、稳定且软件生态非常现代。
- 升级路径: 通常建议从 14.04 -> 16.04 -> 18.04 -> 20.04 -> 22.04 逐步升级,因为直接跨大版本升级可能会遇到很多问题,最稳妥的方式是备份数据后,安装一个新的 22.04 系统。
希望这份详细的指南能帮助你在 Ubuntu 14.04 上愉快地学习 C 语言!
