error while loading shared libraries: libcufft.so.9.0 using cuda 10

Hi,

I’m developing a program using cuda 10.0 that runs on the Jetson TX2 with the jetpack 4.2. So that both host and target (jetson) has the same cuda version.

For development I’m using nsight eclipse and I’m using the PCL library 1.9.1 with VTK and QT5 (all these libraries were compiled on the jetson). Compiling and linking in nsight eclipse is successful and when I run the executable remotely in the jetson I get the next error:

error while loading shared libraries: libcufft.so.9.0

It doesn’t make sense since I’m using cuda 10.0. Previously I was using cuda 9.0 because I had the Jetpack 3.3 installed on the jetson. But on the host side I have removed all the cuda 9.0 files.
I have a file that uses the cufft library but from the eclipse side I have the next option set at the libraries declartion:

:libcufft.so.10.0

If I remove the previous library I get errors (undefined reference) at the file that uses the cufft library.

With this option the linker has to link to the 10.0 version. I copied the file libcufft.so.10.0 from the jetson and pasted it at /usr/local/cuda-10.0/targets/aarch64-linux/lib and the file is being found by the linker since I don’t received any error while linking.

I also have the option --unresolved-symbols=ignore-in-shared-libs set on the -XLinker tab.

I don’t know why is creating a dependency to the 9.0 version of the cufft library, does anyone could help me? maybe some library is creating this dependency?

Other libraries used are Eigen, patate and flann.

Hi

It looks like the error comes from the PCL library.
A possible issue is that PCL is built with CUDA-9.0 so it is not compatible to your environment.

Could you help to check if the library you used supports CUDA-10.0 first?
Thanks.