[flash相关]crossBridge生成的库文件体积优化

本文作者:IMWeb 黄龙 原文出处:IMWeb社区 未经同意,禁止转载

不明白crossBridge是什么的可以看下这里 http://imweb.io/topic/55aa244a6ee095884b704c2c

[flash相关]crossBridge生成的库文件体积优化

编译参数-flto-api=

Specifies a file containing the public API LLVM should preserve (implies that the optimizer is free to strip any symbols not mentioned in this file that aren't referenced by the symbols mentioned in this file)

大体意思就是:指定一个包含你要保留API LLVM 的文件(其他你不需要的就会被优化掉了) 翻译来源:http://bbs.9ria.com/forum.php?mod=viewthread&tid=213448&page=1#pid2094494

为了搞清楚这个东西是怎么玩的,在万能的github上找到一个项目 https://github.com/crossbridge-community/crossbridge-swc-devil 目前为止star是1,要不要点一下。

为什么要以这个项目为例子,因为它的swc仅仅只有167K 看一下它的exports.txt里面写了什么

# built in symbols that must always be preserved
# 构建始终保留的符号
_start1
malloc
free
memcpy
memmove
flascc_uiTickProc
_sync_synchronize

# symbols for C++ exception handling
# C++异常处理的符号
_Unwind_SjLj_Register
_Unwind_SjLj_Resume
_Unwind_SjLj_Unregister
_Unwind_SjLj_RaiseException

# custom symbols
# 自定义符号

试试用这个export.txt来优化库文件体积看看有什么效果。

编译命令行加参数 -flto-api=exports.txt 文件和makefile文件同级即可

测试视频直播SDK通过这个参数减肥340K左右从761K减到419K。编译的swf文件整体体积减小240K左右从558K到315K。效果比较明显在此记录一下。

此处有一个坑,就是这样编译出来的swc文件里面的命名空间可能会是一个很长的临时目录名,但不影响使用

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏深度学习那些事儿

在WordPress中使用Markdown进行写作的正确姿势

在wordpress中使用markdown语法来进行写作,是很多wordpress博主都要想到的一点。虽然说现在wordpress已经“原生”支持wordpre...

5.6K8
来自专栏区块链源码分析

超级账本(Hyperledger Fabric)源码分析之一:总览

1)Go,注意设置好gopath(笔者安装的是go1.8.3,对应的源码是v1.0.0这个tag,版本不对可能会出现编译不过或者运行出现问题)

5075
来自专栏java一日一条

干货!如何正确使用Git Flow

我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用。

1594
来自专栏Java技术栈

2017一季度JAVA面试题锦集

1、如何实现分布式事务,你们公司是怎么解决的? 2、HashMap数据结构及实现原理,其链表是用来解决什么问题的 3、可以自定义java.lang.String...

4235
来自专栏zhisheng

机器常见需要关注的监控指标

做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑。所以,依靠强大的监控系统,收集尽可能多的指标,意义重大。但哪些指标才是有意义的呢,本着从实践中来的思想...

2491
来自专栏用户2442861的专栏

使用事件驱动模型实现高效稳定的网络服务器程序

http://www.cnblogs.com/hnrainll/p/3625597.html

951
来自专栏腾讯云TStack专栏

FileStore压缩存储(优化篇)

前言 前面已经分析过RBD在Ceph的文件分布,就是将一个完整的块设备,映射成大小相同的数据块,然后通过Crush算法进行Map,最后存储在文件中。FileS...

9484
来自专栏Java后端技术栈

面试必备:什么是一致性Hash算法?

最近有小伙伴跑过来问什么是Hash一致性算法,说面试的时候被问到了,因为不了解,所以就没有回答上,问我有没有相应的学习资料推荐,当时上班,没时间回复,晚上回去了...

1711
来自专栏编程

SAS-编程中的小技巧

今天分享的是SAS软件使用过程的中的几个小技巧,掌握了一些小技巧,编程的效率会提高的更快,还能减少敲代码出错率,好处很多,小编就不一一赘述了。 ...

2888
来自专栏派森公园

深入理解Linux LA

经常和Linux打交道的童鞋都知道,load averages是衡量机器负载的关键指标,但是这个指标是怎样定义出来的呢?

1634

扫码关注云+社区

领取腾讯云代金券