Usando a otimização do tempo de link do GCC com bibliotecas vinculadas estáticas

Estou tentando usar otimizações de tempo de link com o-flto Bandeira do CCG (6.1.1).

Embora funcione bem com o meu código, ele não vincula a uma biblioteca vinculada estática que também estou criando e vinculando ao meu projeto (que éMotor e a biblioteca églsl-optimizer, Somente para referência).

Aqui está a saída:

...
/usr/bin/ranlib: ir_expression_flattening.cpp.o: plugin needed to handle lto object
/usr/bin/ranlib: opt_function_inlining.cpp.o: plugin needed to handle lto object
/usr/bin/ranlib: opt_copy_propagation_elements.cpp.o: plugin needed to handle lto object
...

E depois disso, é claro, recebo várias "referências indefinidas" para algumas funções.

Eu fiz algumas pesquisas e descobri que pode ser por causa dear e eu deveria tentar usargcc-ar, mas não tenho certeza de como posso fazer isso.

Além disso, estou usando o CMake que não suporta lto (exceto no compilador da Intel em algumas plataformas, então eu li ...). Mesmo assim, tentei usar:

set_property(TARGET glsl_optimizer PROPERTY INTERPROCEDURAL_OPTIMIZATION True)

O que não deu certo.

Além disso, eu tentei o GCC-fuse-linker-plugin sinalizador que não funcionou.

Eu acho que vou ter que fazê-lo manualmente da maneira antiga usando diretamentegcc-ar, ou talvez haja algum outro método?

questionAnswers(1)

yourAnswerToTheQuestion