g++命令用法介绍
首先,要编译运行一个C++源文件,g++的编译流程是这样的:
预处理 —> 编译 —> 汇编 —> 链接
1.预处理
命令:g++ -E 仅做预处理,不进行编译、汇编和链接。得到.l格式文件
如: g++ -E main.cpp -o main.l
2.编译
命令:g++ -s 编译到汇编语言,不进行汇编和链接。得到.s格式文件
如:g++ -s main.l -o main.s
3.汇编
命令:g++ -c 汇编到目标代码,不进行链接。生成.o格式文件
如:g++ -c main.s -o main.o
4.生成链接文件
命令:g++ -o 生成链接文件
如:g++ main.o printf1.o printf2.o -o main
Makefile编写
Makefile的详细编写教程可参考如下博客:
http://blog.csdn.net/haoel/article/details/2886
一个例子如下:
all:test
CC=g++
CPPFLAGS=-g -std=c++11 -ggdb
test:test.o
$(CC) -o $@ $^
test.o:main.cpp
$(CC) $(CPPFLAGS) -o $@ -c $^
.PHONY:
clean
clean:
rm test.o test