PreciseRoIPooling编译

按照帖子https://blog.csdn.net/qq_17783559/article/details/117716173中间所述的编译过程编译

 

由于我的torch版本是1.8.1。所以在VS(VS2017)的编译过程还出现了多处的无法解析外部符号错误,比如:

prroi_pooling_gpu.obj : error LNK2001: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl at::Tensor::Tensor(void)" (__imp_??0Tensor@at@@QEAA@XZ)

看符号名字应该torch库中的符号,项目的库目录、附加库目录配置没错,那只可能使linker的输入那里少填了lib。

找到虚拟环境中torch的lib目录,看了看里面的lib,找了几个看起来可能像的lib填进去,最后发现还需要添加c10_cuda.lib, torch_cpu.lib, torch_cuda_cpp.lib

完整的lib列表如下:

torch.lib
torch_cpu.lib
torch_cuda_cpp.lib
python37.lib
python3.lib
cudart.lib
c10.lib
c10_cuda.lib
torch_python.lib
_C.lib

最后生成pyd文件,复制到虚拟环境中,Dimp Tracker可以顺利运行。

然后我顺便看了torch1.2.0的lib目录,发现里面的lib文件和torch1.8.1的果然有区别。

所以还是torch版本的问题。

 

posted on 2021-07-24 23:30  博闻强记2010  阅读(662)  评论(0编辑  收藏  举报

导航