why the libnvinfer.so always linking to cuda9.0

hi,
i am trying to build the jetson-inference , i build cuda8.0 providing by jetpack3.1, I successfully built caffe,it is ok when testing vgg net ,but performance is far from benchmark ,then i found out I need to use to tensorrt to test the performance , i am trying to build the jetson-inference , so i downloaded the jetpack3.3 tensortrt4.0, building the cuda 9.0
without flashing the os, I succesfully build the jet-infererence bin and libs ,but when testing it tell me
the cuda Cuda initialization failure with error 35. I rebuild the caffe ,the same errors, I guess the driver cuda9 needed is higher, so
i build back cuda8.0 providing by jetpack3.1, I successfully built caffe,it is works ,but when compling your jetson-inference ,some errors happendedthe errors are the following
/usr/bin/ld: warning: libcublas.so.9.0, needed by /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libcudart.so.9.0, needed by /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so, not found (try using -rpath or -rpath-link) /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasGemmEx@libcublas.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaDeviceReset@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasHgemm@libcublas.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaLaunchKernel@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaFree@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaCreateChannelDesc@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to __cudaUnregisterFatBinary@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to __cudaRegisterFunction@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to __cudaRegisterFatBinary@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaMalloc@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to __cudaRegisterVar@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasSgemm_v2@libcublas.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaSetupArgument@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasSgemmEx@libcublas.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasSetStream_v2@libcublas.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaMemsetAsync@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaLaunch@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaEventSynchronize@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaEventCreateWithFlags@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaStreamSynchronize@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaGetLastError@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaEventRecord@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaFuncSetAttribute@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaMemcpy2DAsync@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaGetErrorString@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaStreamCreate@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasSgemmStridedBatched@libcublas.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaCreateTextureObject@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasCreate_v2@libcublas.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasGetVersion_v2@libcublas.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaGetDevice@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaMemcpyAsync@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaDeviceSynchronize@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasDestroy_v2@libcublas.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaStreamDestroy@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaEventElapsedTime@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaRuntimeGetVersion@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaMemGetInfo@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaStreamAddCallback@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaDestroyTextureObject@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasSetMathMode@libcublas.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasHgemmStridedBatched@libcublas.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cublasGetMathMode@libcublas.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaEventDestroy@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaMemcpy@libcudart.so.9.0’
/usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaGetDeviceProperties@libcudart.so.9.0’ /usr/lib/gcc/aarch64-linux-gnu/5/…/…/…/aarch64-linux-gnu/libnvinfer.so: undefined reference to cudaConfigureCall@libcudart.so.9.0’
collect2: error: ld returned 1 exit status
imagenet-console/CMakeFiles/imagenet-console.dir/build.make:101: recipe for target ‘aarch64/bin/imagenet-console’ failed
make[2]: *** [aarch64/bin/imagenet-console] Error 1
CMakeFiles/Makefile2:122: recipe for target ‘imagenet-console/CMakeFiles/imagenet-console.dir/all’ failed
make[1]: *** [imagenet-console/CMakeFiles/imagenet-console.dir/all] Error 2
Makefile:127: recipe for target ‘all’ failed
make: *** [all] Error 2

The version of CUDA and related packages provided by a given JetPack release is dependent upon the L4T release also being a match. Mixing the packages of one release with another release typically won’t work.

Hi,

As linuxdev said, please re-flash the whole system to solve the dependency issues.

Thanks.