<div dir="ltr"><div><div>Hello all,<br><br></div>We are having issues with our 
generated SDK files. We&#39;re using the jethro branch, and have enabled 
multilib (see relevant portion of local.conf below).<br><br></div><div>I can succesfully run the command to generate the SDK:<br></div><div>$ bitbake &lt;recipe name&gt; -c populate_sdk<br><br></div><div>But the output is incorrect. <b>While
 the aarch sysroots look good, the sysroots for arm are completely 
missing. The environment setup script ends up pointing to non-existent 
compilers. </b>Please let me know if you need more information!<br><br></div><div>Steps to reproduce:<br></div><div>$ bitbake &lt;recipe name&gt; -c populate_sdk<br></div><div>$ cp tmp/deploy/sdk/&lt;sdk-script&gt;.sh /test/directory<br></div><div>$ cd /test/directory<br></div><div>$ bash &lt;sdk-script&gt;.sh<br></div><div>$ ls sysroots/<br>aarch64-poky-linux/   x86_64-pokysdk-linux/ <br><br></div><div>Note the missing ARM directories.<br><br></div><div>Also, the setup script for arm sets this as the command for compiler:<br> 12 export CC=&quot;arm-pokymllib32-linux-gnueabi-gcc<br><br></div><div>But that compiler doesn&#39;t exist anywhere in the folder where I installed everything, or environment!<br><br></div><div>So it appears that it&#39;s not completely or correctly packaging everything for ARMv7.<br></div><div><br></div><div>The <a target="_blank" href="http://www.yoctoproject.org/docs/2.0/mega-manual/mega-manual.html#sdk-dev-environment">documentation does mention some environment variables</a>, but it&#39;s not clear how those related to multilib.<br><br></div><div>For
 instance, none of our recipes have &quot;SDKIMAGE_FEATURES&quot; defined, but 
clearly the aarch64 sysroots are getting populated correctly (we 
succesfully compiled and ran a simple hello world).<br><br></div><div><b>Can
 anyone point me to an example, or discuss a successful use of 
&quot;multilib&quot; on the Jethro branch (given desparate brainstorming below), 
share some more verbose documentation, or ask follow-up questions?</b><br></div><div><br></div><div><br>_____________________________________________________________<br></div><div>Desperate brainstorming below:<br></div><div>I did find this years-old patch: <a target="_blank" href="https://patchwork.openembedded.org/patch/30941/">https://patchwork.openembedded.org/patch/30941/</a><br></div><div>Notably, the do_populate_sdk method in poky/meta/classes/populate_sdk_base.bbclass iterates over the values listed in the MULTILIB_VARIANTS variable:<br><br><pre><span>+        variants = d.getVar(&quot;MULTILIB_VARIANTS&quot;, True) or &quot;&quot;</span>
<span>+        for item in variants.split():</span>
<span>+                # Load overrides from &#39;d&#39; to avoid having to reset the value...</span>
<span>+                overrides = d.getVar(&quot;OVERRIDES&quot;, False) + &quot;:virtclass-multilib-&quot; + item</span>
<span>+                localdata.setVar(&quot;OVERRIDES&quot;, overrides)</span>
<span>+                bb.data.update_data(localdata)</span>
<span>+                bb.build.exec_func(&quot;create_sdk_files&quot;, localdata)</span></pre><br></div><div><br></div><div>The latest version in Jethro does not have anything equivalent to that, but I did not dig deeply into the code or the commit history.<br></div><div><br><br><br><br>______________________________________________________________<br></div><div>More data:<br></div><div><br></div>local.conf relevant section:<br>#<br># Multilib configuration<br>#<br># This sets any packages preprended with lib32- to be built with<br># the armv7a tuning (32 bit) instead of 64 bit aarch.<br>#<br>require conf/multilib.conf<br>MULTILIBS = &quot;multilib:lib32&quot;<br>DEFAULTTUNE_virtclass-multilib-lib32 = &quot;armv7at-neon&quot;</div>