我定义了一个动态链接的cc_库,它包含python绑定代码,因此可以作为python模块加载。现在,我想用python编写使用该模块的测试
cc_library(
name = "rel_py",
srcs = [
"foo.cpp",
],
linkstatic=False,
copts = [
"-fPIC",
],
visibility = ["//visibility:public"],
)
py_test(
name = "integration_test",
srcs = ["integration_test.py"],
#imports = ["../../_solib_k8"],
data=[":rel_py"],
)
集成_test.py:
import librel_py as myLib
我通过py_test的data属性指定依赖关系。但我不知道如何访问生成的库。在bazel out中,创建了librel_py.so,但在integration_test.runfiles
之外,我可以通过“导入”访问该库。此外,还有一个文件夹__main__/_solib_k8
,其中有一个库的副本,但名称“奇怪”(librelpy_Slibrel_Upy.so)。如果我在python脚本中尝试import librelpy_Slibrel_Upy
,python可以找到该文件,但无法导入它,因为公开的符号的名称不同
如何以正确的方式对这种依赖性建模,有什么线索吗?_solib_k8文件夹和库的不同名称的用途是什么
目前没有回答
相关问题 更多 >
编程相关推荐