提问者:小点点

Linux下的ArcGIS SDK与Qt仅打开可执行共享库错误


我用ArcGIS和Qt开发了一个应用程序。应用程序在Qt中运行成功。但是不使用QT(或program),我尝试只运行可执行文件。但它会抛出类似于共享库libesricommonqt.so的错误。没有这样的文件或目录。我已经将libesricommonqt.so粘贴到了可执行文件夹中。但仍然没有打开exe并抛出相同的错误。


共1个答案

匿名用户

在Linux上,共享库需要位于/usr/lib/usr/local/lib这样的位置。或者您需要向LD配置添加一个额外的目录,如下所述:如何在Qt中链接正确共享的linux库?

还可以运行ldd查看需要哪些共享库:https://unix.stackexchange.com/questions/120015/how-to-find-out-the-dynamic-libraries-executables-loads-when-run

您可能还会发现,如果您使用了非核心组件,并且只提供了一组最小的共享库,那么您的QT程序将会运行,但不能完全发挥作用。

或者,将您的应用程序设置为使用静态链接:https://doc.qt.io/qtfordevicecreation/qtee-static-linking.html.注意,据称很难使用cmake进行静态链接;我不确定最近这种情况是否有所改善。