我正在尝试为使用googletest的项目设置工作区文件。我正在按照这里的说明进行操作:https://docs.bazel.build/versions/master/cpp-use-cases.html#including-external-libraries。
我有一个如下所示的WORKSPACE文件:
new_http_archive(
name = "gtest",
url = "https://github.com/google/googletest/archive/release-1.7.0.zip",
sha256 = "b58cb7547a28b2c718d1e38aee18a3659c9e3ff52440297e965f5edffe34b6d0",
build_file = "gtest.BUILD",
strip_prefix = "googletest-release-1.7.0",
)
我有一个如下所示的BUILD文件:
COPTS = [
"-I/usr/local/include",
"-Iexternal/gtest/include",
"-Wno-sign-compare",
]
cc_test(
name = "gaussian_test",
srcs = ["gaussian_test.cc"],
copts = COPTS,
deps = [
"//:boom",
"//:boom_test_utils",
"@gtest//:main",
],
)
我的gaussian_test.cc文件的#include部分包含以下行:
#include "gtest/gtest.h"
当我尝试运行测试时,我得到了
Models/tests/gaussian_test.cc:1:10: fatal error: gtest/gtest.h: No such file or directory
#include "gtest/gtest.h"
在我的主存储库中,我通过在/ usr / local中手动安装googletest来解决此问题,但我正在寻找一种更可移植的解决方案,并且还希望消除一些基本的误解,我似乎对WORKSPACE文件的了解应该运作。谢谢。
答案 0 :(得分:0)
我的问题缺少的部分是gtest-build文件,其中包含缺少的路径信息。