title: How to get the tool id for eclipse headless build
body: <p>Eclipse has a <a href="https://gnu-mcu-eclipse.github.io/advanced/headless-builds/" rel="noreferrer">headless build option</a> and in the documentation they say we can add or replace tool options</p>
  <blockquote>
  <p>Replace a tool option value:           -T          {toolid} {optionid=value}</p>
  <p>Append to a tool option value:         -Ta         {toolid} {optionid=value}</p>
  <p>Prepend to a tool option value:        -Tp         {toolid} {optionid=value}</p>
  <p>Remove a tool option:                  -Tr         {toolid} {optionid=value}</p>
  </blockquote>
  <p>How would someone find the {toolid} value for a build option?</p>
  <p>I would like to change the command line arguments for this command</p>
  <pre><code>arm-none-eabi-objcopy -O ihex &quot;KTV_Rear.elf&quot;  &quot;KTV_Rear.hex&quot;
  </code></pre>
  <p>to</p>
  <pre><code>arm-none-eabi-objcopy -O binary &quot;KTV_Rear.elf&quot;  &quot;KTV_Rear.bin&quot;
  </code></pre>
  <p>I have not been able to find any documentation on how to get the tool id to pass to the -T command. Any help would be appreciated.</p>
  <p>==================== UPDATE ========================
  <a href="https://i.stack.imgur.com/UgRLi.png" rel="noreferrer"><img src="https://i.stack.imgur.com/UgRLi.png" alt="enter image description here" /></a>
  I tried to figure out what the tool ids were in the way that HighCommander4 suggested. Searching for &quot;tool id&quot; in the project gives</p>
  <pre><code>&lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.1172133377&quot; name=&quot;GNU ARM Cross C++ Compiler&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler&quot;/&gt;
  &lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker.707543027&quot; name=&quot;GNU ARM Cross C++ Linker&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker&quot;&gt;
  &lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.archiver.1908892168&quot; name=&quot;GNU ARM Cross Archiver&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.archiver&quot;/&gt;
  &lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting.1903643389&quot; name=&quot;GNU ARM Cross Create Listing&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting&quot;&gt;
  &lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.270131667&quot; name=&quot;GNU ARM Cross C++ Compiler&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler&quot;/&gt;
  &lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker.1091026714&quot; name=&quot;GNU ARM Cross C++ Linker&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.linker&quot;&gt;
  &lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.archiver.1404415533&quot; name=&quot;GNU ARM Cross Archiver&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.archiver&quot;/&gt;
  &lt;tool id=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting.292770688&quot; name=&quot;GNU ARM Cross Create Listing&quot; superClass=&quot;ilg.gnuarmeclipse.managedbuild.cross.tool.createlisting&quot;&gt;
  </code></pre>
  <p>The output of the build window for the command I need to modify is</p>
  <pre><code>Invoking: GNU ARM Cross Create Flash Image
  arm-none-eabi-objcopy -O ihex &quot;KTV_Rear.elf&quot;  &quot;KTV_Rear.hex&quot;
  </code></pre>
  <p>It does not seem obvious which one of the tool ids might relate to arm-none-eabi-objcopy. I tried using the string for the tool id for the archiver with no luck.</p>
  <p>I found <a href="https://www.eclipse.org/lists/cdt-dev/msg16004.html" rel="noreferrer">this link</a> that seems related</p>