前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Qt程序打包库瘦身的方法

Qt程序打包库瘦身的方法

作者头像
Qt君
发布2019-07-15 16:30:43
1.2K0
发布2019-07-15 16:30:43
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程

使用windeployqt程序生成的库都很大,即使是一个空的程序。对比了一下程序,有些库根本就没有用到却也是打包进来了。本文提供一种剔除多余程序库以达到瘦身的方法。

  当一个程序打开运行时候,如果是缺少了库,系统将会弹出对应库找不到的提示对话框。为什么会这样?因为程序运行前先会加载动态库部分到内存以供程序运行调用。

  使用反向思维,我们同样地将程序运行起来,然后将程序目录下的库删除,如果能删除的就证明程序没有使用到该库,如果正在被程序使用的库是不能被删除的。利用这一特性可以将一部分库剔除。

  当然,这一方法其实并不靠谱,不建议操作。我们需要学习的是反向操作的思维,编程有时候需要那么一点点的反式操作却是能在其中找到乐趣。一方面思维定性是学编程的最大优点,另一方面也是最大的缺点。反向操作在生活中常常能有奇效,比如倒立洗头,看似荒唐(想着这一场景却是有些好笑),但他能完美解决洗头需要闭上眼睛的问题。

正确方法

  • 使用windows接口CreateToolhelp32Snapshot,它可以通过获取进程信息为指定的进程、进程堆、模块、线程建立一个快照。
  • 同过获取进程调用的动态库从而进行准确的剔除多余的库。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-06-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Qt君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 正确方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档