symbol cudaMemPoolSetAttribute version libcudart.so.11.0 not defined in file libcudart.so.11.0 with link time reference
时间: 2023-09-23 15:09:20 浏览: 142
This error message indicates that the symbol "cudaMemPoolSetAttribute" is not defined in the shared library file "libcudart.so.11.0" at compile time. This could be caused by several factors, such as a missing or outdated CUDA toolkit installation, incorrect linking settings, or incompatible versions of CUDA libraries and runtime.
To resolve this issue, you can try the following steps:
1. Make sure you have installed the latest version of CUDA toolkit and its dependencies. You can download it from the NVIDIA website and follow the installation instructions.
2. Check if the CUDA environment variables are properly set up in your system. You can verify it by running the command "nvcc -V" in the terminal, which should display the CUDA compiler version.
3. If you are using a Makefile or a build system, check if the linker flags and library paths are correctly specified. You may need to add "-lcudart" or "-L/usr/local/cuda/lib64" to the linker options, depending on your setup.
4. Ensure that all the CUDA libraries and runtime versions are compatible and consistent. You can check the version numbers of the shared libraries by running the command "ldd <path_to_your_executable>".
5. If the problem persists, try rebuilding the application from scratch and clean up any intermediate or cached files that might cause conflicts.
If none of these steps work, you may need to seek further assistance from the CUDA community or NVIDIA support channels.
阅读全文