我知道Clang和GCC作为C/C++编译器在某种程度上是兼容的,只要注意架构标志、预定义和链接正确的库。使用一个编译器创建库并将其与另一个编译器创建的对象链接实际上非常容易(至少在x86上)。
这里有一个小型测试项目,正是如此: https://gitlab.com/higaski/Interoperability 但我想知道链接时优化(LTO)是否可以跨编译器工作?我知道LTO需要一些形式的中间表示,例如LLVM的位码或GCC的GIMPLE,但也许有一种工作流程可以同时利用它们?
这里有一个小型测试项目,正是如此: https://gitlab.com/higaski/Interoperability 但我想知道链接时优化(LTO)是否可以跨编译器工作?我知道LTO需要一些形式的中间表示,例如LLVM的位码或GCC的GIMPLE,但也许有一种工作流程可以同时利用它们?