今天学习objc源码时碰到了工程中只有main文件可以打断点,其余自建的文件打断点一直不生效,很是郁闷,决心探究一下,于是想到了Build Settings
中相关配置,发现是Link Time Optimization(LTO)
引起断点不生效的
Link Time Optimization(LTO)
是干嘛的呢?有什么用呢?
官网上说开启LTO后有几点好处
(1)将一些函数內联化
(2)去除了一些无用代码
(3)对程序有全局的优化作用
试着设置了一下LTO
为Monolithic
,发现生成的App包由原来的89KB
变成了88KB
,设置成Incremental
后发现编译失败了。
今天先暂到这里,以后继续
网友评论