我下载了opencv 3.1.0并使用cmake构建它,我未选中BUILD_SHARED_LIBS
构建完成后,我尝试将c++代码编译为静态lib,这是我的
CMakeListed.txt文件

    cmake_minimum_required(VERSION 2.8)
   PROJECT(word)
   set(OpenCV_DIR "/home/medozeus/videos/opencv/share/opencv")
   FIND_PACKAGE( OpenCV REQUIRED )
   INCLUDE_DIRECTORIES( ${OpenCV_INCLUDE_DIRS} )
   ADD_EXECUTABLE(wordx main.cpp)
   TARGET_LINK_LIBRARIES (wordx ${OpenCV_LIBS})

它编译没有错误,我也运行该程序也没有错误,但是当我将该程序发送到另一台PC并运行它时,它会给我



这是构建后我的3rdparty文件夹的内容

c++ - 用cmake打开cv编译找不到libjpeg-LMLPHP

3rdparty内容中的lib

c++ - 用cmake打开cv编译找不到libjpeg-LMLPHP

但是源代码具有所有库,我不知道为什么在构建它时只能在3rdparty mabye中构建一个库,这会导致错误



这是打开cv的源代码中的3rdparty文件夹内容

c++ - 用cmake打开cv编译找不到libjpeg-LMLPHP

任何的想法

最佳答案

该错误意味着您正在运行可执行文件的目标计算机上没有libjpeg.so.8文件。您可以尝试安装它:
sudo apt-get install libjpeg-dev

07-27 18:28