我按如下方式编译我的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
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。