g++ 编译器的一些总结
一、g++是什么?
g++是GCC中的GUN C++ Compiler(C++编译器),一般在linux环境下使用,最近编写完程序后却不知道怎么去使用g++编译器,特此记录一些常用的编译器命令
二、常见的符号
-g - 打开调试
-Wall - 打开大部分警告
-O or -O2 - 打开优化(O2优化等级大于O1)
-o - 输出文件名
-c - 输出一个目标文件(.o)
-I (大写i) - 按照 -I 指定的路径搜索头文件
-L - 按照-L指定的路进去寻找库文件,一般的在-L的后面可以一次用-l指定多个库文件
-l (小写的L)- 用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?就拿数学库来说,他的库名是m,他的库文件名是libm.so,很容易看出,把库文件名的头lib和尾.so去掉就是库名了
具体例子
CFLAGS = -g -Wall -I /usr/include \
-D_GLIBCXX_USE_CXX11_ABI=0
LIBS = -L /usr/local/lib -lmuduo_net -lmuduo_base -lpthread
SRCS = rejectCon.cc
OBJS = $(SRCS:.cc=.o)
EXECUTABLE = rejectCon //自行体会~
CC = g++
all:
$(CC) $(CFLAGS) -o $(EXECUTABLE) $(SRCS) $(LIBS)
.PHONY:clean
clean:
rm $(EXECUTABLE) $(OBJS)