如何获取Eclipse无头构建的工具ID

时间:2019-05-21 00:37:48

标签: eclipse eclipse-cdt

Eclipse有一个headless build option,他们在文档中说我们可以添加或替换工具选项

  

替换工具选项值:-T {toolid} {optionid = value}

     

附加到工具选项值:-Ta {toolid} {optionid = value}

     

使用工具选项值:-Tp {toolid} {optionid = value}

     

删除工具选项:-Tr {toolid} {optionid = value}

有人会如何为构建选项找到{toolid}值?

我想为此命令更改命令行参数

arm-none-eabi-objcopy -O ihex "KTV_Rear.elf"  "KTV_Rear.hex"

arm-none-eabi-objcopy -O binary "KTV_Rear.elf"  "KTV_Rear.bin"

我还找不到任何有关如何获取工具ID传递给-T命令的文档。任何帮助将不胜感激。

====================更新======================== enter image description here 我试图找出HighCommander4建议的工具ID是什么。在项目中搜索“工具ID”即可

<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.1172133377" name="GNU ARM Cross C++ Compiler" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler"/>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker.707543027" name="GNU ARM Cross C++ Linker" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker">
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.archiver.1908892168" name="GNU ARM Cross Archiver" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.archiver"/>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting.1903643389" name="GNU ARM Cross Create Listing" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting">
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.270131667" name="GNU ARM Cross C++ Compiler" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler"/>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker.1091026714" name="GNU ARM Cross C++ Linker" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker">
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.archiver.1404415533" name="GNU ARM Cross Archiver" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.archiver"/>
<tool id="ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting.292770688" name="GNU ARM Cross Create Listing" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting">

我需要修改的命令的构建窗口的输出是

Invoking: GNU ARM Cross Create Flash Image
arm-none-eabi-objcopy -O ihex "KTV_Rear.elf"  "KTV_Rear.hex"

哪个工具id可能与arm-none-eabi-objcopy有关似乎并不明显。我尝试使用字符串作为存档器的工具ID,但是没有运气。

我发现this link似乎相关

1 个答案:

答案 0 :(得分:0)

在.cproject文件中,您可以找到工具ID(使用superClass字段,不带编号),对于每个工具,您可以找到选项ID列表。在调用行,您需要指定工具ID,选项ID和选项的值,如以下示例所示(将my_lib_location添加到库搜索路径中):

-Tp cdt.managedbuild.tool.gnu.c.linker.exe.release gnu.c.link.option.paths=my_lib_location