我正在我的系统中为使用openvino库的应用程序创建. appimage ..当在另一个系统上部署时..在opencv Mat()函数中出现符号查找错误..
分布式系统安装了openvino,但它的版本比我使用的版本旧..因此,运行时,AppDir文件夹中的AppImage或AppRun使用系统中的opencv库(旧版本)
AppImage是否始终优先选择系统库?如果系统中不存在捆绑库,则使用捆绑库
错误为
./Check-Video-x86_64.AppImage
./Check-Video-x86_64.AppImage: symbol lookup error: ./Check-Video-x86_64.AppImage: undefined symbol: _ZN2cv3MatC1Ev
对appImage库首选项和解决错误有什么见解吗?
1条答案
按热度按时间eeq64g8w1#
它同时使用这两个函数,并优先使用捆绑的函数。因此,如果绑定了给定的
.so
,则将使用它。通常不包括glibc和驱动程序等低级库。这是一场赌博,目的是寻找更好的可移植性并减少捆绑大小。请注意,根据用于创建AppImage的方法(或工具),这可能会有所不同。您可以使用系统链接器的调试功能来了解实际加载的是哪些文件,如下所示:
LD_DEBUG=libs ./yourapp.AppImage