• 5542阅读
  • 7回复

关于5.6的静态编译 [复制链接]

上一主题 下一主题
离线runner111
 

只看楼主 倒序阅读 楼主  发表于: 2016-05-19
编译了5.6 for qnx 编译出来的libQt5Core.a libQt5Gui.a 都100多 200多M,然后用这些库编译出来的执行文件都300M左右(Release),请问是怎么回事 我用个Helloworld 都这样。
离线wjepdb

只看该作者 1楼 发表于: 2016-05-19
Qt SB框架一向如此。连接动态库也是依赖一大堆库。所以还是用官方推荐的动态方式吧。
离线stlcours

只看该作者 2楼 发表于: 2016-05-19
你怎么编译的?详细说说。我这里真实项目里含有不少图片,静态编译的结果也才20M
另外什么是for qnx?
离线runner111

只看该作者 3楼 发表于: 2016-05-19
回 stlcours 的帖子
stlcours:你怎么编译的?详细说说。我这里真实项目里含有不少图片,静态编译的结果也才20M
另外什么是for qnx? (2016-05-19 16:14) 

qnx是一个类似linux的操作系统,编译过程我是借鉴官方的windows-build-qt-static.ps1这个脚本改的,除了编译相关类库不一样,configure基本差不多。
离线runner111

只看该作者 4楼 发表于: 2016-05-19
回 wjepdb 的帖子
wjepdb:Qt SB框架一向如此。连接动态库也是依赖一大堆库。所以还是用官方推荐的动态方式吧。[表情]  (2016-05-19 10:10) 

动态的方法启动太慢了,所以才想用静态,用了qslashscreen 见到图也要3秒
离线stlcours

只看该作者 5楼 发表于: 2016-05-19
虽然从未用过qnx,但是libQt5Core.a libQt5Gui.a 都100多 200多M,我猜测是你编译的时候,没有去掉debug信息~
离线johnyork

只看该作者 6楼 发表于: 2016-05-19
试试用strip命令去除掉DEBUG信息看看,如果还那么大就没招了
离线runner111

只看该作者 7楼 发表于: 2016-05-20
谢谢楼上诸位,的确是不是release的问题。我用的是-debug-and-release 还以为他会两个库都编译出来,单独编译release 现在只有16m了。
快速回复
限100 字节
 
上一个 下一个