我希望将许多 .cc 文件编译成一个 .o 文件。
我正在使用我需要做的 bash 脚本将我的单元测试源文件构建到 unit_test.o 文件中,但它说“g ++:不能用 -c 或 -S 指定 -o 和多个文件”我链接这些源文件在脚本的下一阶段。
到目前为止,我有;
g++ -Wno-deprecated -std=c++0x \
-o $Unit_Test_Output_Directory/unit_test.o \
-c $Unit_Test_Source_Directory/test1.cc $Unit_Test_Source_Directory/test2.cc
然后,我有了我的 -I 和 -L,bash 中的“\”用于将命令拆分为多行。
然后在链接阶段,我将我的 unit_test.o 和源文件的 .o 链接到一个 unit_test_executable 中。
有人可以帮我吗?我是否需要继续为 -o unit_test1.o -c test1.cc 调用构建函数,然后为测试 2... 并在链接阶段链接 unit_test1.o 和 unit_test2.o?
我也尝试过失败:
g++ -Wno-deprecated -std=c++0x \
-o $Unit_Test_Output_Directory/unit_test1.o \
$Unit_Test_Output_Directory/unit_test2.o \
-c $Unit_Test_Source_Directory/test1.cc \
$Unit_Test_Source_Directory/test2.cc