Qt创建者在运行应用程序时找不到依赖库

时间:2015-07-09 02:46:05

标签: c++ qt

我有一个Qt应用程序项目,它取决于另一个Qt库项目。我在我的应用程序专业文件中跟随包含库。

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../CommonLibs/build/Debug/MyLib/release/ -lMyLib
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../CommonLibs/build/Debug/MyLib/debug/ -lMyLib
else:unix: LIBS += -L$$PWD/../../CommonLibs/build/Debug/MyLib/ -lMyLib

INCLUDEPATH += $$PWD/../../CommonLibs/MyLib
DEPENDPATH += $$PWD/../../CommonLibs/MyLib

直到今天,我的应用程序已成功编译,我可以运行,通过QtCreator调试应用程序。但突然之间,即使我可以编译应用程序,我也无法通过QtCreator运行它。当我尝试运行它时,QtCreator会报告该应用程序已退出,但如果我在main()中设置了一个断点,它就不会受到攻击。

如果我手动将依赖库dll文件复制到存在应用程序exe的目录,那么我可以通过QtCreator运行它。

我检查了QtCreator中的构建环境项目设置,我的lib路径存在于PATH变量中。

我记不起我做过的任何可能造成这个问题的重大行动。

有人能给我一个解决方案吗?

1 个答案:

答案 0 :(得分:0)

问题出在图书馆提到的另一个图书馆所依赖的图书馆。我新创建了这个库,并使前面提到的库依赖它。

为了能够运行应用程序,我不得不将这个新库的依赖项添加到我的应用程序#!/usr/bin/env ruby -w # first.rb # Author: Andy Bettisworth # Description: Declare first script status class FirstScript def status counter = 1 puts "I'm number #{counter}" counter end end if __FILE__ == $0 script = FirstScript.new script.status #=> I'm number 1 end 文件中。然后,一切正常。