C++ bazel cc_测试环境选项

C++ bazel cc_测试环境选项,c++,bazel,test-environments,C++,Bazel,Test Environments,当我使用cc_测试时,如: cc_test( name = "xxx_test", srcs = glob([ 'xxx.cpp', ]), linkopts = [ "-L/usr/local/lib", "-lcppunit", "-ldl", "-lz", "-ltbb", "-llz4", "-lzstd" ],

当我使用cc_测试时,如:

cc_test(
    name = "xxx_test",
    srcs = glob([
        'xxx.cpp',
    ]),
    linkopts = [
        "-L/usr/local/lib",
        "-lcppunit",
        "-ldl",
        "-lz",
        "-ltbb",
        "-llz4",
        "-lzstd"
    ],
    deps = [
        ":feature_generator"
    ],
)
我需要运行这个命令:

./bazel test @xxx//xxx:xxx_test --test_output=errors --test_env=LD_LIBRARY_PATH=/usr/local/lib
我怎么能省略它呢?“--test\u env=LD\u LIBRARY\u PATH=/usr/local/lib”。

cc_测试是否具有环境路径选项

我想这样做

cc_test( 
*** 
*** 
test_env = ['/usr/local/lib'] 
) 
我可以在这个cmd中测试:
/bazel test@xxx//xxx:xxx\u test--test\u output=errors
我不想写
“--test\u env=LD\u LIBRARY\u PATH=/usr/local/lib”
当我想测试时

现在,如果我运行cmd:
/bazel test@xxx//xxx:xxx\u test--test\u output=errors
将得到以下错误:

/home/alex.sh/.cache/bazel/_bazel_alex.sh/c973fcd5ba7eef8db46b22b84af3a149/bazel-sandbox/3561058496653596424/execroot/__main__/bazel-out/local-fastbuild/bin/external/feature_generator/featur\
e_generator/gbdt_test.runfiles/__main__/external/feature_generator/feature_generator/gbdt_test: error while loading shared libraries: libzstd.so.1: cannot open shared object file: No such fi\
le or directory

因此,您可以将该标志添加到您的中,例如:


但是,测试操作无法找到LD_LIBRARY_路径,而构建操作对我来说可能听起来像一个bug,您应该在

上提交一个问题,以便您可以将该标志添加到您的中,例如:


然而,事实上,测试操作无法找到LD_LIBRARY_路径,而构建操作对我来说可能听起来像一个bug,您应该在

上提交一个问题。对不起,您可以添加更多关于问题到底是什么的详细信息吗?例如,你想做什么,当你尝试做的时候会发生什么?我想做这个cc_测试(****test_env=['/usr/local/lib']),我可以在这个cmd中测试:./bazel test@xxx//xxx:xxx_test--test_output=我不想写的错误--test_env=LD_LIBRARY\u PATH=/usr/local/lib当我想要测试时,为什么需要添加测试环境?你有一个bazelrc可以向Bazel传递更多选项吗?我更新了我的问题~I thihk maybe libzstd.so在/usr/loca/lib中,当Bazel运行测试时,找不到它。Sry,我不使用bazelrc,bazelrc文件可以解决这个问题吗?0.0抱歉,你可以添加更多关于问题的详细信息吗?例如,你想做什么,当你尝试做的时候会发生什么?我想做这个cc_测试(****test_env=['/usr/local/lib']),我可以在这个cmd中测试:./bazel test@xxx//xxx:xxx_test--test_output=我不想写的错误--test_env=LD_LIBRARY\u PATH=/usr/local/lib当我想要测试时,为什么需要添加测试环境?你有一个bazelrc可以向Bazel传递更多选项吗?我更新了我的问题~I thihk maybe libzstd.so在/usr/loca/lib中,当Bazel运行测试时,找不到它。Sry,我不使用bazelrc,bazelrc文件可以解决这个问题吗?0.0
test --test_env=LD_LIBRARY_PATH=/usr/local/lib