在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
即可。