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

前言 。 我在C中编写了一个小应用程序,用OpenCV库播放video文件。 我的开发机器是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让它尽快工作。

提前致谢!

假设它是典型的:

LDFLAGS=-static buildcommand