如何使用静态库编译OpenCV应用程序

时间:2012-02-04 15:08:24

标签: c opencv

前言即可。 我在C中编写了一个小应用程序,用OpenCV库播放视频文件。 我的开发机器是Ubuntu 10.04,但客户的操作系统是OpenSuse 12.1 我使用cmake-gui构建了OpenCV 2.1并确保所有必需的库都存在(如此处所述http://www.shiffman.net/2011/01/23/how-to-build-opencv-static-libraries-mac-os-x/) 我也用cmake-gui构建了我的应用程序(如http://opencv.willowgarage.com/wiki/Getting_started所述)

问题即可。 它在我的电脑上工作正常。但是,在客户的机器上,我收到“加载共享库的错误......”。当我运行“ldd video_player”时,它找不到libavformat.so.52,libavcodec.so.52和libstdc ++。so.6。有没有办法将这些库包含在播放器中,以便一切都可以开箱即用?

后记即可。我猜这有一个简单的解决方案。但是,拥有Java和PHP的强大背景,我是C的新手,截止日期快到了。我尝试使用ffmpeg来完成这个任务,但它给了很多噩梦,所以我只是坚持使用OpenCV让它尽快工作。

提前致谢!

1 个答案:

答案 0 :(得分:2)

假设这是典型的:

LDFLAGS=-static buildcommand