CMake Error at /usr/local/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message): Could NOT find CUDA: Found unsuitable version "11.4", but required is exact version "11.0" (found /usr/local/cuda) Call Stack (most recent call first): /usr/local/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:456 (_FPHSA_FAILURE_MESSAGE) /usr/local/share/cmake-3.18/Modules/FindCUDA.cmake:1119 (find_package_handle_standard_args) /usr/local/lib/cmake/opencv4/OpenCVConfig.cmake:86 (find_package) /usr/local/lib/cmake/opencv4/OpenCVConfig.cmake:108 (find_host_package) CMakeLists.txt:12 (find_package) -- Configuring incomplete, errors occurred! See also "/opt/projects/PCB_DETECT/build/CMakeFiles/CMakeOutput.log". See also "/opt/projects/PCB_DETECT/build/CMakeFiles/CMakeError.log".
时间: 2023-07-04 10:31:02 浏览: 153
这个错误是由于CMake找到了你机器上安装的CUDA版本为11.4,但你的项目需要的版本是11.0。你需要升级或降级CUDA版本,以满足你的项目需求。
如果你的CUDA版本已经是11.0但仍然出现此错误,你可以尝试在CMake中设置`CUDA_VERSION`变量。例如:
```
set(CUDA_VERSION 11.0)
```
这将强制CMake使用11.0版本的CUDA,而不是系统默认的版本。你可以将这行代码添加到CMakeLists.txt文件中,然后重新运行CMake。
如果你需要同时支持多个CUDA版本,那么你可以考虑使用`CUDA_TOOLKIT_ROOT_DIR`变量来指定不同版本的CUDA安装路径。例如:
```
set(CUDA_TOOLKIT_ROOT_DIR /usr/local/cuda-11.0)
```
这将告诉CMake使用11.0版本的CUDA安装路径。你可以根据需要添加多个`CUDA_TOOLKIT_ROOT_DIR`变量,以支持不同版本的CUDA。
相关问题
CMake Error at /usr/share/cmake-3.22/Modules/CMakeTestCUDACompiler.cmake:56 (message):
CMake Error at /usr/share/cmake-3.22/Modules/CMakeTestCUDACompiler.cmake:56 (message): 这个错误是由于找不到CUDA编译器引起的。请确保您已经正确地安装了CUDA,并且CUDA的路径被正确地配置在CMakeLists.txt文件中。您可以尝试使用`which nvcc`命令来查看CUDA编译器的路径是否正确。如果路径不正确,您可以通过设置环境变量来解决,例如`export CUDA_PATH=/usr/local/cuda`。另外,请检查是否已经安装了CMake的CUDA模块。您可以尝试使用以下命令安装:`sudo apt install cmake-curses-gui`。
CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find osg (missing: OSG_LIBRARY)
这个错误提示是因为CMake在查找osg库时未能成功找到。
您可以尝试以下方法来解决这个问题:
1. 确认您已经正确安装了osg库,如果没有安装,您可以使用以下命令安装:
```
sudo apt-get install openscenegraph
```
2. 如果已经安装了osg库,但仍然出现了这个错误提示,请检查您的CMakeLists.txt文件中是否正确设置了osg库的路径和名称。您可以在CMakeLists.txt文件中添加以下代码:
```
find_package(osg REQUIRED)
include_directories(${OSG_INCLUDE_DIR})
target_link_libraries(your_project_name ${OSG_LIBRARIES})
```
这个代码片段将指导CMake正确找到osg库。
3. 如果以上两种方法都无法解决问题,请尝试更新您的CMake版本,或者在CMakeLists.txt文件中手动设置osg库的路径和名称。
希望这些方法能够帮助您解决问题。
相关推荐
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![a](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)