由于找不到库而导致构建失败后运行可执行文件 - 如何导出路径

时间:2017-01-24 21:08:31

标签: c++ qt qmake

在我的subdirs - 项目中,我有两个库和一个使用这些库的应用程序。 这些库本身使用预构建的第三方库。 我的应用程序编译和链接,但无法运行错误Failed to start program. Path or permissions wrong?的可执行文件。

如果我导航到可执行文件并尝试运行它,它会抱怨缺少库。然后我将所有必需的库复制到可执行文件的文件夹中,该文件夹现在在我双击它时启动。仍然,QtCreator在构建之后无法启动可执行文件。我的项目设置目标之一是来复制文件,既不是标题也不是库。标题应该从它们的源代码中引用,包括dir,以及来自构建目录的库。

我在Windows上使用Qt5.3.2 qmake,使用shadowbuild。我也用Qt5.7尝试过。它也无法直接启动我的应用程序,所以它似乎不是一个错误。我想我只是不知道如何正确设置我的项目。

对于构建我指定像LIBS += -L$${OUT_PWD}/../mylib/debug -lmylib这样的库路径,它显然有效。 我有什么选择来告诉库的路径,以便应用程序在构建(从QtCreator运行)后启动,而不必将所有库复制到可执行文件的文件夹中?

更新:

我在QtCreator中进入了项目的RUN设置,发现工作目录有点错误。我将它更新到我的阴影构建目录。现在,在我复制了所有dll后,应用程序可以由QtCreator启动。仍然,在复制之前,我得到错误The program has unexpectedly finished,根据我的经验,这是运行时“我找不到lib”问题的典型消息。

0 个答案:

没有答案