How can I use lto with static libraries?

核能气质少年 提交于 2019-11-28 23:18:36

The answer, as I found out from this post by GCC developer Honza Hubička, is to use the gcc-ar wrapper instead of ar by itself:

$ gcc-ar rcs library.a library.o

This invokes ar with the right plugin arguments, in my case were

--plugin /usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.1/liblto_plugin.so

As a complimentary answer: with GCC there is also the possibility to use -ffat-lto-objects which adds classic object code to the files in the archive. This makes it possible to use the static library in code that you build without -flto.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!