问题标签 [windeployqt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
15 浏览

qt - 通过安装程序框架和 qtbinarycreator 构建 qtApp - 即使在设置路径 Win10 后也找不到 qt dll - 有人有这个问题吗?

在Win10上构建App,在MSVC2017上编译。使用 windeployqt 和 binarycreator 构建安装程序。在新电脑(未安装 qt)上使用安装程序,创建应用程序。尝试运行应用程序 (exe),我们得到错误找不到 qt dll 组件,例如网络或小部件。当我们检查安装程序加载应用程序的目录时,所有 dll 都存在。手动设置路径和系统变量,即使重新启动,错误仍然存​​在。有没有人经历过这个?有什么解决办法吗?在安装了该版本 qt 的 win10 上,它工作正常。再一次,有什么想法吗?谢谢你。

0 投票
0 回答
22 浏览

c++ - QT 中的 myapp.exe.config

我看到应用程序配置文件https://docs.microsoft.com/en-us/windows/win32/sbscs/application-configuration-files。但我只在 QT 中使用 Application Manifests myapp.manifest 作为 .pro "CONFIG -= embed_manifest_exe" 中的设置,并在 .rc 中添加 "1 24 myapp.manifest" 以使用它并生成 myapp.exe.manifest 文件。我想在 QT 中使用 myapp.config 来重定向包含 dll 库的路径,结果不是 myapp.exe.config 文件。帮我

0 投票
1 回答
266 浏览

windows - 如何设置 Qt Creator 以使用 windeployqt?

我正在尝试在 Windows 上的 Qt Creator 中编译我的代码,它在 Qt Creator 中编译和运行。但是,当我尝试从 Qt Creator 外部运行 exe 时,我收到有关缺少 dll 的错误。

从我到目前为止的研究来看,有两种选择:

  1. 找到这些丢失的 DLL 并将它们复制到与 exe 相同的目录中,希望上帝我复制了正确的版本。
  2. 使用 windeployqt 实现自动化 (1)。

现在我不想通过命令行处理 windeployqt - 有没有办法让 Qt Creator 为我处理这个问题?到目前为止,当我单击 时Deploy,它只是构建项目,但似乎没有做任何其他事情。

0 投票
0 回答
146 浏览

qt - windeployqt 不适用于使用 qmldir 模块的项目

我正在尝试使用 windeployqt --qmldir 方法部署应用程序。当从包含可执行文件的文件夹中运行命令时,所有依赖项都会被复制,一切看起来都很顺利。除了,当我单击应用程序文件在没有安装 Qt 的系统上运行它时,它根本不会启动。我得到忙碌的鼠标指针几秒钟,然后什么也没有。没有错误或任何东西。它在安装了 Qt 的机器上确实可以正常启动,但在另一台机器上却不行。我尝试使用相同的方法部署我的其他一些项目,它们都运行良好。然后我想到它可能是我正在使用的多个 qmldir “模块”。所以我拿了一个以前部署得很好的项目,向它添加了一个 qmldir 模块并再次部署它,aaaand 什么都没有。相同的 ”

我尝试过的 windeployqt 命令是:

那是行不通的。也试过:

这使得部署目录变得非常大,因为它复制了所有内容,但仍然无法正常工作。然后我尝试在 --qmlimport 选项之后插入导入路径(在 main.cpp 文件中使用 engine.addImportPath() 指定):

这也没有奏效。它只是将我所有的 qml 文件复制到了部署目录,这是我无论如何都想避免的。

0 投票
1 回答
135 浏览

cmake - 是否可以确定是否从“安装”或“打包”阶段调用了 CMake install(CODE)?

我正在使用 CMake v3.21.0在安装阶段通过install(CODE)命令调用 Qt 的windeployqt,如下所示:

如果安装项目,这工作正常:

但是在创建 CPack 包时,创建的文件windeployqt不是的一部分(在这种情况下为 ZIP):

我知道问题是${CMAKE_INSTALL_PREFIX}CODE.

  1. 对于install目标,这是正确的。
  2. 对于package目标,这是不正确的。相反,应该使用当前CPack 生成器的构建目录,例如${CMAKE_CURRENT_BINARY_DIR}/_CPack_Packages/win64/ZIP/${CPACK_PACKAGE_FILE_NAME}.

我的问题是:

  1. 有没有办法区分installpackage定位该CODE部分?(伪代码if(CMAKE_IS_PACKAGING):)
  2. 如果有办法:是否可以获取或动态构建实际 CPack 临时“安装”目录的目录路径?

如果这两个问题都可以解决,则生成的文件windeployqt应该是 CPack 生成的包的一部分。

0 投票
1 回答
147 浏览

qt - 使用 cpack 和 windeployqt 创建安装程序

当我执行我的 CMakelists.txt 时,目标可执行文件没有与自动生成的 .zip 或安装程序一起打包,它位于构建目录的根目录中。.zip 和安装程序中包含的所有内容都是适当的 .dll 等。有人可以解释我做错了什么吗?

0 投票
1 回答
53 浏览

qt - 在 Linux 机器上将 Qt 部署到 Windows

感觉像一个愚蠢的问题,但我很难在网上找到答案:如果您在 Linux 机器上进行开发,是否可以将 Qt 应用程序部署到 Windows?似乎答案应该是“是”,但我似乎无法在我的 linux 机器上使用 windeployqt。

如果可能的话,我需要什么额外的资源来做到这一点?

0 投票
0 回答
17 浏览

windows - 为什么在使用 windeployqt 时必须手动复制 mingw DLL?

刚刚下载了 Qt Creator 并编译了我的应用程序。我在命令行上使用 windeployqt,因为我在 Qt creator 本身中没有找到任何选项。当我在我的二进制文件上使用它时,我仍然需要将我的 Qt 安装目录中的 libgcc_s_seh-1.dll、libstdc++-6.dll 和 libwinpthread-1.dll 等 DLL 复制C:\Qt\6.2.2\mingw_64\bin到我的部署目录中,否则我无法启动 .exe 文件。如果我试图在没有 Qt Creator 的情况下在目标构建目录中启动它,也会发生同样的情况。

windeployqt 或 Qt Creator 不应该将这些 DLL 复制到构建和部署目录中,以便您可以正确运行 .exe 吗?!

0 投票
1 回答
21 浏览

qt - QT EXE 执行失败

我正在用 qml qt 开发一个 Windows 应用程序。我的 qml 应用程序与不同的外部库链接,其中之一是 VLC。我使用以下命令从发布文件夹生成的 myApp.exe 文件生成了依赖项:

windeployqt.exe --qmldir [myqmlFilesPath] [pathTo myApp.exe]

我使用dependency walker检查了所有依赖项,它对我的​​系统运行良好。但是当我试图在另一个系统上运行它时,它给出了缺少 libvlccore.dll 的错误。我手动添加了它,但是应用程序无法在我自己的系统上运行。屏幕截图随附于此。我在谷歌上搜索了很多,但没有任何帮助。感谢 错误信息