问题标签 [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.
qt - 通过安装程序框架和 qtbinarycreator 构建 qtApp - 即使在设置路径 Win10 后也找不到 qt dll - 有人有这个问题吗?
在Win10上构建App,在MSVC2017上编译。使用 windeployqt 和 binarycreator 构建安装程序。在新电脑(未安装 qt)上使用安装程序,创建应用程序。尝试运行应用程序 (exe),我们得到错误找不到 qt dll 组件,例如网络或小部件。当我们检查安装程序加载应用程序的目录时,所有 dll 都存在。手动设置路径和系统变量,即使重新启动,错误仍然存在。有没有人经历过这个?有什么解决办法吗?在安装了该版本 qt 的 win10 上,它工作正常。再一次,有什么想法吗?谢谢你。
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 文件。帮我
windows - 如何设置 Qt Creator 以使用 windeployqt?
我正在尝试在 Windows 上的 Qt Creator 中编译我的代码,它在 Qt Creator 中编译和运行。但是,当我尝试从 Qt Creator 外部运行 exe 时,我收到有关缺少 dll 的错误。
从我到目前为止的研究来看,有两种选择:
- 找到这些丢失的 DLL 并将它们复制到与 exe 相同的目录中,希望上帝我复制了正确的版本。
- 使用 windeployqt 实现自动化 (1)。
现在我不想通过命令行处理 windeployqt - 有没有办法让 Qt Creator 为我处理这个问题?到目前为止,当我单击 时Deploy
,它只是构建项目,但似乎没有做任何其他事情。
qt - windeployqt 不适用于使用 qmldir 模块的项目
我正在尝试使用 windeployqt --qmldir 方法部署应用程序。当从包含可执行文件的文件夹中运行命令时,所有依赖项都会被复制,一切看起来都很顺利。除了,当我单击应用程序文件在没有安装 Qt 的系统上运行它时,它根本不会启动。我得到忙碌的鼠标指针几秒钟,然后什么也没有。没有错误或任何东西。它在安装了 Qt 的机器上确实可以正常启动,但在另一台机器上却不行。我尝试使用相同的方法部署我的其他一些项目,它们都运行良好。然后我想到它可能是我正在使用的多个 qmldir “模块”。所以我拿了一个以前部署得很好的项目,向它添加了一个 qmldir 模块并再次部署它,aaaand 什么都没有。相同的 ”
我尝试过的 windeployqt 命令是:
那是行不通的。也试过:
这使得部署目录变得非常大,因为它复制了所有内容,但仍然无法正常工作。然后我尝试在 --qmlimport 选项之后插入导入路径(在 main.cpp 文件中使用 engine.addImportPath() 指定):
这也没有奏效。它只是将我所有的 qml 文件复制到了部署目录,这是我无论如何都想避免的。
cmake - 是否可以确定是否从“安装”或“打包”阶段调用了 CMake install(CODE)?
我正在使用 CMake v3.21.0在安装阶段通过install(CODE)命令调用 Qt 的windeployqt,如下所示:
如果安装项目,这工作正常:
但是在创建 CPack 包时,创建的文件windeployqt
不是包的一部分(在这种情况下为 ZIP):
我知道问题是${CMAKE_INSTALL_PREFIX}
在CODE
.
- 对于
install
目标,这是正确的。 - 对于
package
目标,这是不正确的。相反,应该使用当前CPack 生成器的构建目录,例如${CMAKE_CURRENT_BINARY_DIR}/_CPack_Packages/win64/ZIP/${CPACK_PACKAGE_FILE_NAME}
.
我的问题是:
- 有没有办法区分
install
和package
定位该CODE
部分?(伪代码if(CMAKE_IS_PACKAGING)
:) - 如果有办法:是否可以获取或动态构建实际 CPack 临时“安装”目录的目录路径?
如果这两个问题都可以解决,则生成的文件windeployqt
应该是 CPack 生成的包的一部分。
qt - 使用 cpack 和 windeployqt 创建安装程序
当我执行我的 CMakelists.txt 时,目标可执行文件没有与自动生成的 .zip 或安装程序一起打包,它位于构建目录的根目录中。.zip 和安装程序中包含的所有内容都是适当的 .dll 等。有人可以解释我做错了什么吗?
qt - 在 Linux 机器上将 Qt 部署到 Windows
感觉像一个愚蠢的问题,但我很难在网上找到答案:如果您在 Linux 机器上进行开发,是否可以将 Qt 应用程序部署到 Windows?似乎答案应该是“是”,但我似乎无法在我的 linux 机器上使用 windeployqt。
如果可能的话,我需要什么额外的资源来做到这一点?
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 吗?!
qt - QT EXE 执行失败
我正在用 qml qt 开发一个 Windows 应用程序。我的 qml 应用程序与不同的外部库链接,其中之一是 VLC。我使用以下命令从发布文件夹生成的 myApp.exe 文件生成了依赖项:
windeployqt.exe --qmldir [myqmlFilesPath] [pathTo myApp.exe]
我使用dependency walker检查了所有依赖项,它对我的系统运行良好。但是当我试图在另一个系统上运行它时,它给出了缺少 libvlccore.dll 的错误。我手动添加了它,但是应用程序无法在我自己的系统上运行。屏幕截图随附于此。我在谷歌上搜索了很多,但没有任何帮助。感谢 错误信息