2017-09-21 55 views
1

当我使用一个cc_test,如:巴泽尔cc_test test_env选项

cc_test(
    name = "xxx_test", 
    srcs = glob([ 
     'xxx.cpp', 
    ]), 
    linkopts = [ 
     "-L/usr/local/lib", 
     "-lcppunit", 
     "-ldl", 
     "-lz", 
     "-ltbb", 
     "-llz4", 
     "-lzstd" 
    ], 
    deps = [ 
     ":feature_generator" 
    ], 
) 

我需要运行这个CMD:

./bazel test @xxx//xxx:xxx_test --test_output=errors --test_env=LD_LIBRARY_PATH=/usr/local/lib 

我怎么能忽略它"--test_env=LD_LIBRARY_PATH=/usr/local/lib".

是否cc_test有env_path选项?

我想要做这样的

cc_test( 
*** 
*** 
test_env = ['/usr/local/lib'] 
) 

,我可以在这个CMD测试:./bazel test @xxx//xxx:xxx_test --test_output=errors我不想写"--test_env=LD_LIBRARY_PATH=/usr/local/lib"当我想测试

现在如果我运行这个CMD:./bazel test @xxx//xxx:xxx_test --test_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 
+0

对不起文件中的问题你能添加上有什么问题究竟更多的细节?例如。你想要做什么以及当你尝试做什么时会发生什么? –

+0

我想要做这样 cc_test( *** *** test_env = [ '的/ usr/local/lib目录'] ) ,我可以在这个CMD测试:./巴泽勒测试@xxx // xxx:xxx_test --test_output = errors 当我想测试 – Alex

+0

时,我不想写“--test_env = LD_LIBRARY_PATH =/usr/local/lib”为什么你需要添加测试环境?你有没有通过更多的选择巴泽尔bazelrc? –

回答