在Ubuntu系统中,GCC(GNU Compiler Collection)是一个非常常用的编译器集合,用于编译C、C++、Objective-C等编程语言的源代码。以下是一些常用的GCC编译器命令:
编译C程序
gcc -o program_name source_file.c
编译C++程序
g++ -o program_name source_file.cpp
编译C程序
gcc -o program_name source_file1.c source_file2.c
编译C++程序
g++ -o program_name source_file1.cpp source_file2.cpp
指定标准
gcc -std=c99 -o program_name source_file.c # 使用C99标准
g++ -std=c++11 -o program_name source_file.cpp # 使用C++11标准
优化级别
gcc -O2 -o program_name source_file.c # 使用O2优化级别
g++ -O3 -o program_name source_file.cpp # 使用O3优化级别
调试信息
gcc -g -o program_name source_file.c # 添加调试信息
静态链接库
gcc -o program_name source_file.c -lmylib # 链接名为libmylib.a的静态库
动态链接库
gcc -o program_name source_file.c -lmylib # 链接名为libmylib.so的动态库
gcc -o program_name file1.o file2.o
g++ -o program_name file1.o file2.o
gcc -E source_file.c -o preprocessed_file.i # 预处理C源文件
g++ -E source_file.cpp -o preprocessed_file.i # 预处理C++源文件
gcc -S source_file.c -o assembly_file.s # 将C源文件汇编成汇编代码
g++ -S source_file.cpp -o assembly_file.s # 将C++源文件汇编成汇编代码
gcc -T linker_script.ld -o program_name source_file.c # 使用自定义链接器脚本
gcc --version
g++ --version
可以使用make工具配合Makefile来管理编译过程,并使用make clean命令清理编译生成的中间文件和可执行文件。
这些命令涵盖了GCC编译器的基本用法和一些常用选项。根据具体需求,还可以进一步探索和使用更多的编译选项和功能。