c-如何编译独立的OpenCV可执行文件?
作者:互联网
我按如下方式编译我的OpenCV程序:
g++ `pkg-config --cflags opencv --libs opencv` <filename>.cpp
它在我的计算机上完美运行.我可以单独将共享库与程序一起编译,以便可以在没有opencv的其他计算机上运行吗?如果是这样,我该怎么办?
解决方法:
编译过程中的程序会动态链接到我们计算机上的共享库(.so文件).编译的可执行文件在运行时使用这些共享库.但是这些共享库可能未在其他计算机上出现,因此可能无法运行该可执行文件.
解决方案将是静态链接存档库(.a文件),而不是动态链接共享库. OpenCV不会这样分发存档库.因此,必须使用cmake -DBUILD_SHARED_LIBS = OFF从其源代码编译存档库.该存档库可用于创建独立的可执行文件.
标签:opencv,g,linux,c-4 来源: https://codeday.me/bug/20191201/2078383.html