文章目录
- g++流程
- 常用示例
g++流程
预处理->编译->汇编->链接
预处理: 展开头文件,宏替换,去除注释,条件编译
g++ -E test.cpp -o test.i
-E 只进行预编译, 生成真正的源代码.i文件
编译:检查语法,生成汇编文件
g++ -S test.i -o test.s
-S 只编译不汇编,生成汇编代码.s文件
汇编:汇编代码生成机器码
g++ -c test.s -o test.o
参数 -c 汇编代码生成机器代码.o文件
链接:将多个文件及相关库编译生成可执行文件
机器代码文件生成可执行程序
g++ test.o -o test
常用示例
编译单个源文件并生成可执行文件:
g++ test.cpp -o test
编译多个源文件并生成可执行文件:
g++ file1.cpp file2.cpp -o test
指定 C++ 标准版本
g++ -std=c++11 main.cpp -o program
添加头文件和库文件的搜索路径:
g++ -I include_dir -L lib_dir -l mylib main.cpp -o program