在我的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”问题的典型消息。