wxwidget opencv与第三个lib冲突,如jpeg,png,zlib,tiff

时间:2012-09-10 02:21:31

标签: opencv wxwidgets conflict

我在winXP上工作,并使用gcc4.7。

我构建了OpenCV 2.4.2静态库,它们有liblibjpeg.a liblibpng.a liblibtiff.a libzlib.a和其他.a文件。

然后我在共享上构建了wxwidgets294并获取libwxjpeg.a libwxpng.a libwxtiff.a libwxzlib.a和其他.a / .dll文件。

因此,当我在wxwidgets上使用OpenCV时,它们会发生冲突。当我链接-lopencv_highgui -lopencv_imgproc -lopencv_core -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxmsw29ud时wxwidget可以工作,但是OpenCV不能,就像imread会失败(它变空了)。当我链接-lopencv_highgui -lopencv_imgproc -lopencv_core -llibjasper -llibtiff -llibjpeg -llibpng -lwxmsw29ud -lzlib时,wxwidgets无法正常工作,它会在运行后立即退出。

有关如何解决此问题的任何想法?

1 个答案:

答案 0 :(得分:0)

你没有解释为什么它不起作用(你的意思是“退出”是“崩溃”吗?如果是这样,你试过调试吗?)但一般来说最好是链接你使用的所有库而不是一次作为共享库,并没有多个(也许是不同的)静态副本。

至少可以将wxWidgets配置为使用系统上已存在的共享库(如果已安装)。你可能没有它们,这就是为什么它会依赖于编译wx本身包含的版本。