直接使用gtest_main.a?

时间:2014-02-27 05:23:35

标签: c++ makefile googletest

gtest的示例makefile具有以下代码行

gtest-all.o : $(GTEST_SRCS_)
    $(CXX) $(CPPFLAGS) -I$(GTEST_DIR) $(CXXFLAGS) -c \
            $(GTEST_DIR)/src/gtest-all.cc

gtest_main.o : $(GTEST_SRCS_)
    $(CXX) $(CPPFLAGS) -I$(GTEST_DIR) $(CXXFLAGS) -c \
            $(GTEST_DIR)/src/gtest_main.cc

gtest.a : gtest-all.o
    $(AR) $(ARFLAGS) $@ $^

gtest_main.a : gtest-all.o gtest_main.o
    $(AR) $(ARFLAGS) $@ $^

由于我没有对gtest_main.a所需的文件进行任何更改,我可以直接在所有MAkefiles中使用此gtest_main.a而无需编写构建它的步骤吗?我的意思是一旦生成了gtest_main.a,我总是可以提供它的路径或者在我的项目目录中复制粘贴!

2 个答案:

答案 0 :(得分:1)

我尝试直接使用getst_main.a并且它有效。与我相信应该消除这些线以使编译更快的相反,它实际上并不重要。 Makefile会自动检测是否修改了依赖项,如果没有,它会跳过该文件的编译。谢谢Beta

答案 1 :(得分:0)

转到构建配置并为GTEST_DIR添加环境变量。 解决了我的问题。