可以做围棋题的网站,如何做文化传播公司网站,潍坊做网站教程,备案 网站服务内容这里写目录标题 opencv版本问题下载3.2.0源代码进入解压后的目录创建构建目录运行 CMake 配置 配置时指定一个独立的安装目录#xff0c;例如 /opt/opencv-3.2#xff1a;出错#xff1a; 使用多线程编译错误1#xff1a; stdlib.h: 没有那个文件或目录错误2#xff1a;er… 这里写目录标题 opencv版本问题下载3.2.0源代码进入解压后的目录创建构建目录运行 CMake 配置 配置时指定一个独立的安装目录例如 /opt/opencv-3.2出错 使用多线程编译错误1 stdlib.h: 没有那个文件或目录错误2error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] 安装 管理多个版本的 OpenCV在Leg-KILO的CMakeLists.txt文件中修改 opencv版本问题
我的是安装ros自带的4.2.0版本该系统需要3.2.0。
下载3.2.0源代码
https://github.com/opencv/opencv/releases/tag/3.2.0直接用浏览器下载并解压
进入解压后的目录
cd opencv-3.2.0创建构建目录
mkdir build cd build运行 CMake 配置 配置时指定一个独立的安装目录例如 /opt/opencv-3.2
cmake -DCMAKE_BUILD_TYPERelease \-DCMAKE_INSTALL_PREFIX/opt/opencv-3.2 \-DBUILD_SHARED_LIBSON ..出错 解决办法参考CMake Error at 3rdparty/ippicv/downloader.cmake:77 (message): ICV: Failed to download ICV package:
使用多线程编译
make -j$(nproc)错误1 stdlib.h: 没有那个文件或目录 解决办法参考stdlib.h: 没有那个文件或目录
cmake时加上参数-D ENABLE_PRECOMPILED_HEADERSOFF
错误2error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] 错误信息被顶上面了可以重定向输出到文件中
make -j4 ~/Desktop/make_output.log 21/home/ubuntu2004/opencv-3.2.0/modules/python/src2/cv2.cpp:730:34: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] 730 | char* str PyString_AsString(obj); 解决办法 invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] 或make时的问题 在opencv-3.2.0/modules/python/src2/cv2.cpp路径下 找到cv2.cpp,大约在730行将 char* str PyString_AsString(obj); 改为 char* str (char *)PyString_AsString(obj);
安装
sudo make install管理多个版本的 OpenCV
在 C 项目中使用 通过 CMake 的 find_package 指定 OpenCV 版本。例如使用 OpenCV 3.2
find_package(OpenCV 3.2 REQUIRED PATHS /opt/opencv-3.2/share/OpenCV)
include_directories(${OpenCV_INCLUDE_DIRS})
target_link_libraries(your_target ${OpenCV_LIBS})
在Leg-KILO的CMakeLists.txt文件中修改
注释掉之前的补上opencv 3.2.0安装的路径 # find_package(OpenCV REQUIRED QUIET)find_package(OpenCV 3.2 REQUIRED PATHS /opt/opencv-3.2/share/OpenCV)