c++编译pytorch layer

envs/py36/lib/python3.6/site-packages/correlation_cuda-0.0.0-py3.6-linux-x86_64.egg/correlation_cuda.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN6caffe26detail37_typeMetaDataInstance_preallocated_32E

 

这个错误查了好久……

最后发现,要先import torch 再import correlation_cuda就好了

 

ImportError: dynamic module does not define module export function (PyInit_correlation_cuda)

这个错误查了更久,解决办法是

主文件中最后要加一句话:

PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) {

m.def("forward", &correlation_forward_cuda, "Correlation forward (CUDA)");

m.def("backward", &correlation_backward_cuda, "Correlation backward (CUDA)");

}

python版本也很重要,根据自己的需求安装对应python

 

你可能感兴趣的:(python,pytorch)