如何在另一台计算机(linux)上使用OpenCV运行c++库



我在Ubuntu 11.04中使用c++、OpenCV 2.2和g++写了一个小项目。我需要建一个图书馆。这样会更好),但我希望它在没有安装OpenCV的情况下在另一台计算机上运行。
我尝试使用-shared和-fPIC标志为g++构建动态库,并将OpenCV .so lib复制到工作目录。实际上我只需要core和feature2d,但实际上它请求了很多其他库,包括highgui,它也有很多依赖关系。
我尝试了静态链接,使用-Wl,-Bstatic标志,但也不成功。有人有同样的问题吗?我将非常感谢任何帮助。

可以构建不依赖于系统库的OpenCV。要在Linux上打开OpenCV 2.2的所有依赖,可以使用以下参数运行cmake:

cmake -DWITH_1394=OFF -DWITH_CUDA=OFF -DWITH_EIGEN2=OFF -DWITH_FFMPEG=OFF -DWITH_GSTREAMER=OFF -DWITH_GTK=OFF -DWITH_OPENEXR=OFF -DWITH_PVAPI=OFF -DWITH_QT=OFF -DWITH_TBB=OFF -DWITH_UNICAP=OFF -DWITH_V4L=OFF -DWITH_XINE=OFF -DUSE_IPP=OFF -DOPENCV_BUILD_3RDPARTY_LIBS=ON ..

但是在这种情况下,您将无法使用highgui模块中的许多函数:

  • 视频读写
  • 使用相机
  • 所有与GUI一起工作的函数(如imshow)

最新更新