如何编译一个独立的OpenCV可执行?(How to compile a standalone Op

2019-09-19 00:06发布

我编译我的我的OpenCV的程序如下:

g++ `pkg-config --cflags opencv --libs opencv` <filename>.cpp

它完美的作品在我的电脑上。 我一个人也请编译共享库与程序,以便它可以在其上可是没有它OpenCV的其他计算机上运行? 如果是这样,我怎么办呢?

Answer 1:

编译过程中的程序动态链接到共享库(.so文件)我们的计算机上。 可执行文件编译使用过程中运行时,这些共享库。 但是,这些共享库可能不存在在其他计算机上,因此可能无法运行可执行文件。

解决这将是静态链接归档库(.a文件),而不是动态链接共享库。 OpenCV的不分发归档库本身。 因此,人们必须从使用它的源代码编译归档库cmake -DBUILD_SHARED_LIBS=OFF 。 这个档案库可用于创建独立的可执行文件。



Answer 2:

是在一定程度上:查找静态链接 。 你OpenCV的副本必须的库。一个版本(不只是。所以你提到),而且也是其他任何依赖性如此。



Answer 3:

第您需要使用静态库。



文章来源: How to compile a standalone OpenCV executable?