0
我试图用clang ++代替g ++来创建稍后将由gnu链接器链接的目标文件。Clang在使用插件时不创建目标文件
我很能成功做到这一点使用本地铛++,但是当我使用铛++有一个插件,我得到一个链接错误:
铛:错误:连接命令,退出代码为1(使用失败 - v看到调用)
没关系!我只需要目标文件!但是,当我指定-S或-c时,即使使用.o来显式指定输出文件,也不会获得任何对象文件。
即使使用clang的示例插件,我也无法做到这一点。
我怎样才能得到一个对象文件的铿锵声?
非常感谢!
使用'-cc1',您还必须提供所有包含路径和定义等。使用'-plugin'将用您的插件操作替换默认的“编译”操作。使用'-add-plugin'会将你的插件添加到默认的“编译”操作中。但你的回答很有帮助! – RedX 2012-09-19 08:18:17
您必须小心,但是您对插件执行的任何修改都不会被带到最终的可执行文件。目前的插件(3.1,3.2)不能修改AST。 CodeGenAction在插件之前运行,负责生成最终文件。 – RedX 2012-09-19 16:24:21