【发布时间】:2018-04-07 04:22:35
【问题描述】:
如果我在 Linux 的 Qt Creator 4.6.0 中创建一个新的 Qt Widget 应用程序并将以下行添加到 pro 文件中:
LIBS += -L/opt/MATLAB/R2018a/sys/os/glnxa64
它编译没有任何问题,但它不运行。它显示了这个 Segmentation fault 错误:
这是/opt/MATLAB/R2018a/sys/os/glnxa64中的文件列表:
libgcc_s.so.1
libgfortran.so.3
libgfortran.so.3.0.0
libifcore.so.5
libifport.so.5
libimf.so
libintlc.so.5
libiomp5.so
libirc.so
libquadmath.so.0
libquadmath.so.0.0.0
libstdc++.so.6
libstdc++.so.6.0.22
libsvml.so
README.libstdc++
为什么会发生这种情况以及如何解决?
【问题讨论】:
-
您的 QMAKE 文件中的行看起来是正确的,您也可以发布您的代码吗?因为这似乎是一个运行时问题
-
没有代码。正如我在问题中提到的,我只是制作了一个
newQt Widget Application 并在我的 pro 文件中添加 LIBS 行。 -
这里有一些可能有用的东西,qtcentre.org/threads/… 用户提供了一个示例,其中不仅使用 -L 设置路径,而且使用 -l 设置各个库名称,例如 LIBS += -Lpath -lname
-
为什么要投反对票?!?
-
@138 不指定文件名怎么办?它会查找路径中的所有文件吗?为什么会出现此错误?
标签: linux qt shared-libraries qt-creator