如何使用waf的多个编译器(Python)

时间:2018-06-15 14:03:48

标签: gcc waf

我无法弄清楚如何在同一个wscript中使用两个不同的编译器。 Waf书中的任何内容都没有清楚地表明这一点。

我在这些方面尝试了一些东西:

def configure(ctx):
    ctx.setenv('compiler1')
    ctx.env.CC = '/some/compiler'
    ctx.load('compiler_c')
    ctx.setenv('compiler2')
    ctx.env.CC = '/some/other/compiler'
    ctx.load('compiler_c')

这似乎不起作用。当我这样做时,Waf找不到任何编译器。我只是通过在命令行中指定

来设法使用两个不同的编译器进行编译
 $ CC='/some/compiler' waf configure

这很烦人,因为我每次都要手动更改CC变量并重新运行配置......

谢谢!

1 个答案:

答案 0 :(得分:0)

好了,您接近了:)您只需要在设置CC env变量conf.load("compiler_c")后使用编译器加载并使用变体构建即可。我在this answer中写了一个完整的示例。