QtCreator [Qt 5.9.x ] QQmlApplicationEngine 加载组件失败

QtCreator [Qt 5.9.x ] QQmlApplicationEngine failed to load component

这困扰了我一段时间,如果其他人也遇到同样的错误,我只是提交这个,据我所知,这并不是一个罕见的问题。

如果您曾经将您的 Qt QML 代码移动到另一台机器上,并且在您从 Qt Creator 运行 它之后,您会得到类似这样的东西:

QQmlApplicationEngine failed to load component qrc:/main.qml:14 Type ApplicationWindow unavailable [path-to-your-qt]qt5/5.9.3/gcc_64/qml/QtQuick/Controls.2/ApplicationWindow.qml:41 plugin cannot be loaded for module "QtQuick.Templates": Cannot load library > [path-to-your-qt]qt5/5.9.3/gcc_64/qml/QtQuick/Templates.2/libqtquicktemplates2plugin.so: [path-to-your-qt]qt5/5.9.3/gcc_64/qml/QtQuick/Templates.2/libqtquicktemplates2plugin.so: symbol _ZN15QQuickContainer17componentCompleteEv, version Qt_5_PRIVATE_API not defined in file libQt5QuickTemplates2.so.5 with link time reference)

尝试直接 运行ning Qt Creator 可执行文件而不是 运行ning shell 文件,即 运行:

[qt5-目录]Tools/QtCreator/bin/qtcreator 代替 [qt5-目录]Tools/QtCreator/bin/qtcreator.sh

qtcreator.sh 摆弄 LD_LIBRARY_PATH,它可能会开始使用您的系统 Qt 库,这些库比您刚刚使用 Qt 安装程序安装的 Qt 早 95%