Qt打包Debug版本和Release版本(包含到其他电脑打不开,缺库问题等)含msvcp140d.dll,concrt140d.dll,vcruntime140d.dll等发布所需库文件

本文主要是介绍Qt打包Debug版本和Release版本(包含到其他电脑打不开,缺库问题等)含msvcp140d.dll,concrt140d.dll,vcruntime140d.dll等发布所需库文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先Debug版本和Release区别:
Release是发行版本,比Debug版本有一些优化,文件比Debug文件小 。Debug是调试版本,Debug和Release调用两个不同的底层库。
Debug是调试版本,包括的程序信息更多。
只有Debug版的程序才能设置断点、单步执行、使用TRACE/ASSERT等调试输出语句。
Release不包含任何调试信息,所以体积小、运行速度快。

网上有很多的Qt打包教程,大多是打包Release版本,其实Debug版本跟Release版本的打包方式几乎是差不多的,主要区别就是里面的dll文件。

1.先在搜索框搜索Qt,找到你编译时候的版本,注意msvc,wingw,64/32等,本演示使用的是msvc2015_64位
在这里插入图片描述
2.把你项目中编译Debug/Release文件中的.exe文件(此时直接打开会提示缺库打不开)拖出到一个单独的文件夹,如下图所示,然后的在弹出的命令行cd加上这个文件夹的路径(就是进入到这个文件夹),之后用windeployqt加上这个.exe的名字(这个命令会把这个.exe文件所需要的dll文件打包进来),回车就会在这个文件夹生成需要的dll文件。
在这里插入图片描述
回车之后会有如下信息,如果你的项目有自己的dll文件,直接复制到此文件夹就可以,接下来正常的话(你电脑有Qt环境,有MSVC编译环境),在此文件夹直接打开.exe文件是直接能打开运行的。
在这里插入图片描述

可能会遇到的问题,自己遇到过这样的问题,自己电脑点.exe文件能打开,移植到别的电脑会显示缺库打不开,例如如下图所示请添加图片描述
请添加图片描述
我自己解决的方案有两种

第一种(可以了解,但是不推荐,最好先使用第二种):就是比较复杂的一种方法就是缺什么库加进去什么库文件,传了一些项目一般会缺少的dll,包括Debug版本和Release版本需要的dll,还有msvc库的安装包如下图。有需要的话可以在本页面上面,进行下载(免费)。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述第二种:就是在输入windeployqt之后中出现了这一行,就需要进行环境变量的配置,没有所以会缺少了很多包,在环境变量加入下图所示的内容,根据电脑不同位置肯可能有所差异,主要是找这个VC的文件夹,之后确定,重新再来一次就好了。
在这里插入图片描述
在这里插入图片描述

这篇关于Qt打包Debug版本和Release版本(包含到其他电脑打不开,缺库问题等)含msvcp140d.dll,concrt140d.dll,vcruntime140d.dll等发布所需库文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/338882

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方

修复已被利用的高危漏洞! macOS Sequoia 15.6.1发布

《修复已被利用的高危漏洞!macOSSequoia15.6.1发布》苹果公司于今日发布了macOSSequoia15.6.1更新,这是去年9月推出的macOSSequoia操作... MACOS Sequoia 15.6.1 正式发布!此次更新修复了一个已被黑客利用的严重安全漏洞,并解决了部分中文用户反馈的

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja