现在在做一个 iOS 的静态库,因为公司对静态库有比较严的体积要求,现在需要压缩掉基本 50%左右的空间。 因为有涉及到 eigen 之类比较大的第三方依赖,所以想按函数为单位去精简一下。
多谢
1
noli 2017-02-12 14:52:49 +08:00 via iPhone
今日头条 iOS 客户端启动速度优化实践
|
2
noli 2017-02-12 14:59:14 +08:00 via iPhone
忽略我上一层回复,我记错了,里面没有找 unused 函数的工具,只有未被使用的类
|
3
noli 2017-02-12 15:03:40 +08:00 via iPhone
|
4
MCVector 2017-02-12 15:03:44 +08:00 via Android
试试 lcov 测试一下 code coverage
|
5
ryd994 2017-02-12 15:53:31 +08:00
coverage
很多时候是 profiling 的时候顺便,说白了就是找 profiling 当中调用次数为 0 的 |
6
ryd994 2017-02-12 16:19:55 +08:00
顺带一提,完全自动化的测试是做不到的,必须人工测试各种输入,或者编写测试框架,但不可能从头到尾都全自动
|
7
zhidian 2017-02-12 16:28:18 +08:00 via Android
不知道是不是我弄错了(不懂 iOS )。静态库不是会被链接到二进制里面? Eigen 只有头文件,那就跟静态库没关系了。。。。。。
|
8
owt5008137 2017-02-12 16:32:50 +08:00 via Android
除 Windows 外好像接口默认是导出的,所以把不需要的接口设为不导出,最后在链接优化的时候没使用过的会被链接器去掉的。
|
9
lululau 2017-02-12 16:36:52 +08:00
|
10
yichen 2017-02-15 17:15:10 +08:00
推荐一个工具,自带 Mac GUI 界面,还能批量对无用函数注释。
https://github.com/ming1016/SMCheckProject |