在Linux下使用C++编译器(如g++)时,可以通过以下方法设置编译选项:
- 在命令行中直接添加编译选项:
g++ -Wall -Wextra -O2 -o output_file source_file.cpp
在这个例子中,我们使用了以下编译选项:
-Wall
:开启所有警告信息。-Wextra
:开启额外的警告信息。-O2
:开启二级优化。
- 使用
-c
选项生成目标文件,然后使用-o
选项指定输出文件名:
g++ -c -Wall -Wextra -O2 source_file.cpp -o object_file.o g++ -o output_file object_file.o
在这个例子中,我们首先使用-c
选项生成目标文件object_file.o
,然后使用-o
选项将目标文件链接到最终的可执行文件output_file
。
- 创建一个名为
Makefile
的文件,以便更轻松地管理和设置编译选项。在Makefile
中,可以定义编译规则、依赖关系和编译选项。例如:
CC = g++ CFLAGS = -Wall -Wextra -O2 OBJFILES = source_file.o TARGET = output_file all: $(TARGET) $(TARGET): $(OBJFILES) $(CC) -o $@ $^ %.o: %.cpp $(CC) $(CFLAGS) -c $< -o $@
在这个例子中,我们定义了CC
变量来存储编译器名称(g++),CFLAGS
变量来存储编译选项(-Wall、-Wextra、-O2),OBJFILES
变量来存储目标文件列表,以及TARGET
变量来存储最终的可执行文件名。all
规则依赖于所有目标文件,而每个目标文件的生成规则都使用CFLAGS
变量中的编译选项。
要使用这个Makefile
进行编译,只需在命令行中输入make
即可。