g++ -o gray_image gray_image.cpp -I /usr/local/include/opencv2 -lopencv_core -lopencv_highgui -lopencv_imgproc使用该命令后还是会出现fatal error:opencv2/opencv.cpp:没有那个文件和目录
时间: 2024-01-10 15:10:15 浏览: 38
`fatal error: opencv2/opencv.cpp: No such file or directory` 这个错误通常是因为`opencv2`的路径没有正确设置。可以尝试以下两种方法:
1. 确认OpenCV的版本和安装路径是否正确,如果不正确的话需要重新安装OpenCV。然后将`-I`选项中的路径修改为正确的OpenCV库文件的路径。
2. 在头文件路径中加入`opencv2`文件夹所在的路径,命令如下:
```
g++ -o gray_image gray_image.cpp -I /usr/local/include -lopencv_core -lopencv_highgui -lopencv_imgproc
```
这样编译器就能够找到`opencv2`文件夹了,从而解决这个问题。
相关问题
/usr/bin/ld: cannot find -lopencv_opencv_modules报错如何处理
这个报错通常是因为系统中没有安装OpenCV模块库,或者是没有正确设置OpenCV的环境变量。
解决方法:
1. 确认已经安装了OpenCV模块库,可以通过以下命令来检查:
```
pkg-config --modversion opencv
```
如果显示OpenCV的版本号,则表示已经安装成功。
2. 如果没有安装OpenCV模块库,则需要先安装它。可以使用以下命令来安装:
```
sudo apt-get install libopencv-dev
```
3. 如果已经安装了OpenCV模块库,但是还是出现了这个错误,可能是因为环境变量没有正确设置。可以通过以下命令来设置环境变量:
```
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
```
4. 最后,重新编译代码,应该就可以解决这个问题了。
/usr/bin/ld: 找不到 -lopencv_dnn
根据您提供的信息,出现了找不到名为“-lopencv_dnn”的库的错误。这通常是由于缺少OpenCV库或未正确链接OpenCV库引起的。您可以尝试以下解决方法:
1. 确保您已正确安装OpenCV库,并且已将其路径添加到LD_LIBRARY_PATH环境变量中。您可以使用以下命令将OpenCV库路径添加到LD_LIBRARY_PATH中:
```
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/ds/opencv-3.1.0/3rdparty/ippicv/unpack/ippicv_lnx/lib/intel64
```
2. 如果您使用的是CMake构建系统,则需要在CMakeLists.txt文件中添加以下行:
```
target_link_libraries(your_executable_name opencv_dnn)
```
其中“your_executable_name”是您的可执行文件的名称。
3. 如果您手动编译并链接OpenCV库,则需要确保已正确指定OpenCV库的路径和名称。您可以使用以下命令手动链接OpenCV库:
```
g++ your_source_files -o your_executable_name -I/path/to/opencv/include -L/path/to/opencv/lib -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_dnn
```
其中“your_source_files”是您的源文件列表,“your_executable_name”是您的可执行文件的名称,“/path/to/opencv/include”和“/path/to/opencv/lib”是OpenCV库的路径。