Qt Creator 编译后无法加载插件

Posted

技术标签:

【中文标题】Qt Creator 编译后无法加载插件【英文标题】:Qt Creator can not load plugins after compilation 【发布时间】:2014-07-12 16:58:44 【问题描述】:

我成功地从源代码编译了 Qt Creator。尝试启动它时,会显示一个对话框,其中包含无法加载的插件列表,消息如下所示:

无法加载插件,因为无法加载依赖项:CppTools(3.1.83) 原因:K:\compile-qtc\build\lib\qtcreator\plugins\CppToolsd.dll: 无法加载库 K:/compile-qtc/build/lib/qtcreator/plugins/CppToolsd.dll: 找不到指定的过程。

对话框中列出的所有插件的消息看起来都相似。每个插件提到的库都在那里。我可能做错了什么?

在 Windows 7 64 位上使用捆绑在 Qt 5.3.1 中的 MinGW (GCC 4.8.2)。

【问题讨论】:

DLL 是否在路径上? @The_Anomaly:这些 dll 也是从相同的 Qt Creator 源编译的。你的意思是它们应该在系统路径中? 啊,对不起,我看错了你的原帖。我的评论不相关。我在 Windows 上安装 Qt Creator 使用二进制文件的经验一直非常积极,但我认为你有理由需要编译它。抱歉,我帮不上忙——我希望其他人可以。 这个问题在这里有点离题。一个不错的选择是在 QtCreator IRC 频道中提问:#qt-creator at freenode @leemes:我在发布之前就这样做了。我还在 qt-creator 频道,目前还没有答案。 【参考方案1】:

尝试在任何这些 dll (CppToolsd.dll) 上使用dependencywalker(http://www.dependencywalker.com/),看看哪些是不允许它们加载的。还尝试将 Qt 5.3.1(假设您使用它来编译 QtCreator src)bin 目录添加到您的系统路径变量。

【讨论】:

Qt 5.3.1 的 bin 目录已经在路径中,这就是编译成功的原因。 您是否尝试在 CppToolsd.dll 上运行依赖项walker,它显示了什么?它会将丢失的 dll(这取决于)显示为红色。 是的,我检查了大部分依赖项都在 Qt 安装目录中。我在徘徊是否有一个“make install”步骤可以拉动所有的依赖。我询问了 IRC(Qt Creator)中的“make install”步骤,答案是没有“make install”步骤,但是构建目录被构建过程中的许多目标文件污染。我将尝试通过 IRC 和可能的邮件列表跟进此事。

以上是关于Qt Creator 编译后无法加载插件的主要内容,如果未能解决你的问题,请参考以下文章

使用MinGW编译Qt Creator

Qt 应用程序无法加载自定义插件调试库

qt creator源码全方面分析(2-10)

Spyder 无法启动 - “无法找到或加载 Qt 平台插件窗口”

Qt creator 编译错误:无法解析的外部符号(命令)

无法在 Archlinux 上找到或加载 Qt 平台插件“xcb”(写!AppImage)