QT 项目打包提示缺少动态库

QT项目打包遇到提示无法定位输入点_xxxxxx 于动态库连接 xxxx\libwinpthread-1.dll上。

先说下个人理解逻辑,QT打包大致跟其他博主说的一样,利用QT提供的windeployqt(indeploy 部署意思)软件进行打包,他会将需要的动态库以及依赖文件找出放入一个文件夹中,我安装的QT软件提供了多个支撑系统的windeployqt软件,如下图,有支撑安卓的有支撑msvc的还有mingw的,这就存在一个问题,如果你构建项目时用的mingw的而打包时用的是msvc的打包,就会出现找不到定位点的问题。

还有就是可能流氓软件360会导致编译过程出现问题,选择关闭360安全卫士

 

下面说下我处理的过程:

1. 将打包软件windeployqt的路径放入系统环境变量:系统属性中--》环境变量---》Path---》将windeployqt软件的位置加到编译环境变量中。(将用到的置顶)

2. 构建项目,在构建项目前先选择部署环境,选择release版,然后在构建中--构建部署

3. 将生成的可执行文件放入一个新建文件夹中,如图所示,将1中release/bin中的xxx.exe文件找出放入新建的2号文件夹中

4. 找到相应的编译软件编译拷贝的.exe文件 (注意:将流氓软件360关闭)

 

5. 打包好后用第三方压缩软件 Enigma Virtual box再进行一次压缩,压缩完成后会生成一个独立的xxx_boxed.exe文件,如果运行没有问题那么可以直接将这个xxx_boxed.exe软件拷贝到其他电脑运行。

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
回答: 要将Qt项目打包动态库,可以按照以下步骤进行操作。首先,进入存放需要打包的exe文件的目录,可以使用命令行(cmd)进入该目录。然后,使用windeployqt命令,后面跟上需要打包的exe文件的名称,即可获取所需要的动态库。如果提示“不是内部或外部命令,也不是可运行的程序或批处理文件。”,可以将windeployqt所在的目录加入到环境变量中。需要注意的是,如果使用的是vs+qt生成的文件,在使用上述命令之前,建议使用vs自带的命令行,否则可能会出现缺少vc依赖的情况。具体的解决办法可以参考相关链接\[1\]。 另外,如果需要调用该动态库程序,可以按照以下步骤进行操作。在使用该库的程序中,新建一个include文件夹和一个lib文件夹。将导出类的头文件复制到include文件夹中,将编译生成的.lib文件复制到lib文件夹中。然后,在程序中引入该头文件即可。在Qt项目中,可以在.pro文件中添加INCLUDEPATH和LIBS的配置,将include文件夹和lib文件夹添加到相应的路径中,以及链接对应的库文件\[3\]。 参考资料: \[1\] 获取需要的动态库: https://blog.csdn.net/no_say_you_know/article/details/126360830 \[2\] native-lib.cpp文件内容 \[3\] 调用动态库的步骤 #### 引用[.reference_title] - *1* [打包Qt程序(获取需要的动态库)](https://blog.csdn.net/qq_39618959/article/details/129536248)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [13、使用Android Studio开发工具,将一个QT含有第三方库的工程打包成一个动态so供Android Studio开发人员...](https://blog.csdn.net/sxj731533730/article/details/123154604)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【QTQt 给已经开发好的程序快速封装成动态库](https://blog.csdn.net/Cappuccino_jay/article/details/126137458)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值