hkust-vgd / pointwise

Code for Pointwise Convolutional Neural Networks, CVPR 2018
http://pointwise.scenenn.net
MIT License
130 stars 26 forks source link

Failed to run train script -- undefined symbol #3

Closed prathik-naidu closed 6 years ago

prathik-naidu commented 6 years ago

I'm able to run ./tf_conv3p_compile.sh without any problems, but when I run python train_modelnet40_acsd.py, i get the following error:

tensorflow.python.framework.errors_impl.NotFoundError: /home/shared/pointwise-partial-convolutions/pointwise/tf_ops/conv3p/tf_conv3p.so: undefined symbol: _ZTIN10tensorflow8OpKernelE

I've tried removing the -D_GLIBCXX_USE_CXX11_ABI=0 flag, and also replacing -fPIC with -fPIC ${TF_CFLAGS[@]} ${TF_LFLAGS[@]}.

None of these approaches (which seem to have worked for other people in different projects), are working to compile pointwise. Any solution to this?

songuke commented 6 years ago

Could you try ./tf_conv3p_compile.sh -a? The _acsd suffix requires atrous convolution, and it has to be turned on during compilation.

I'm sorry that the code and its description is confusing at the moment. More updates will come next week. Thanks.

2018-05-29 5:36 GMT+09:00 Prathik Naidu notifications@github.com:

I'm able to run ./tf_conv3p_compile.sh without any problems, but when I run python train_modelnet40_acsd.py, i get the following error:

tensorflow.python.framework.errors_impl.NotFoundError: /home/shared/pointwise-partial-convolutions/pointwise/tf_ops/conv3p/tf_conv3p.so: undefined symbol: _ZTIN10tensorflow8OpKernelE

I've tried removing the -D_GLIBCXX_USE_CXX11_ABI=0 flag, and also replacing -fPIC with -fPIC ${TF_CFLAGS[@]} ${TF_LFLAGS[@]}.

None of these approaches (which seem to have worked for other people in different projects), are working to compile pointwise. Any solution to this?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/scenenn/pointwise/issues/3, or mute the thread https://github.com/notifications/unsubscribe-auth/AAIXsuJVWf7kxA-sunYpHWmm1YR1r74nks5t3F_IgaJpZM4UQlS8 .

saira05 commented 6 years ago

@prathik-naidu How did you compile this ./tf_conv3p_compile.sh . i tried it by typing first chmod a+x* and then write the ./tf_conv3p_compile.sh but i got error i posted that error in issues too. kindly help me. thanx

songuke commented 6 years ago

@prathik-naidu I just looked into the error. It is due to incompatible Tensorflow. Basically, the code was written originally in Tensorflow 1.3, and now, with recent version of Tensorflow like 1.8, it is necessary to link the custom op with -ltensorflow_framework library. This will solve the undefined symbol issue.

The -D_GLIBCXX_USE_CXX11_ABI=0 flag might be still necessary if you compile with gcc < 5.1 which uses the old ABI tagging by default.

Please check the latest code on repository again. Thanks.