OpenCV静态链接64位

时间:2011-03-30 14:51:03

标签: opencv static-linking

我在OpenCV中编写了一个简单的应用程序,并使用以下命令对其进行编译:

g++ -I ./include/opencv -Wall -o imageHash imageHash.h imageHash.cpp -lcv -lhighgui

我接下来要做的是以下内容:

  • 使用静态链接,因此我可以运行此应用程序而无需在traget机器上安装openCV

  • 将应用程序编译为独立于CPU的形式,因此我也可以在32位和64位计算机上运行它。

如何修改编译命令,以实现以下目的? 谢谢, krisy

1 个答案:

答案 0 :(得分:1)

如果希望它在32位和64位系统上独立运行,请在32位模式下编译。至于静态链接,理论上这样做的方法是在使用cmake构建时,在构建选项卡下取消选中BUILD_SHARED_LIBS。我遇到的问题是这似乎不起作用,所以现在你可能会陷入动态链接。要覆盖其他系统上的安装,只需将DLL放在与exe相同的目录中。