<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>12600</bug_id>
          
          <creation_ts>2018-03-13 09:09:06 +0000</creation_ts>
          <short_desc>nativesdk programs are not executed in eSDK</short_desc>
          <delta_ts>2018-03-15 04:47:25 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>6</classification_id>
          <classification>Yocto Project Subprojects</classification>
          <product>eSDK</product>
          <component>eSDK</component>
          <version>2.4.2</version>
          <rep_platform>x86</rep_platform>
          <op_sys>arm</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Undecided</priority>
          <bug_severity>critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Lukasz Majewski">l.majewski</reporter>
          <assigned_to name="Paul Eggleton">bluelightning</assigned_to>
          
          
          <qa_contact name="Francisco Pedraza">francisco.j.pedraza.gonzalez</qa_contact>
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>Don&apos;t know</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>79799</commentid>
    <comment_count>0</comment_count>
    <who name="Lukasz Majewski">l.majewski</who>
    <bug_when>2018-03-13 09:09:06 +0000</bug_when>
    <thetext>The problem is with bundling some program to eSDK. For example iperf3.

Prerequisite:
iperf3_%.bbappend

with BBCLASSEXTEND = &quot;native nativesdk&quot;


When I do add it to TOOLCHAIN_HOST_TASK&apos;s nativesdk-packagegroup-sdk-host as
RDEPENDS_${PN} += &quot; nativesdk-iperf3&quot;

After eSDK deployment on developer&apos;s machine, sourcing environment:
. /opt/scs_sdk/environment-setup-armv7ahf-neon-poky-linux-gnueabi

When I try to execute iperf3:

iperf3
 -bash: /opt/scs_sdk/sysroots/x86_64-pokysdk-linux/usr/bin/iperf3: No such file or directory

file iperf3
/opt/scs_sdk/sysroots/x86_64-pokysdk-linux/usr/bin/file: line 4: /opt/scs_sdk/sysroots/x86_64-pokysdk-linux/usr/bin/file.real: No such file or directory

The same error can be observed with other binaries (like htop, nano, etc)
The iperf3 is working after deploying SDK. It is also usable from:
 x86_64-buildtools-nativesdk-standalone-2.4.2.sh

I&apos;ve double check and: SDK_INCLUDE_TOOLCHAIN = “1” - so we shall install in eSDK the same set of binaries as we did with SDK.

Why I cannot use iperf3 (and others) from eSDK? Is there any way to combine 
x86_64-buildtools-nativesdk-standalone-2.4.2.sh and eSDK to have binaries from former and devtool from latter?

Or maybe I&apos;m fundamentally wrong and miss some obvious thing?

Thanks in advance for help,
Łukasz</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79810</commentid>
    <comment_count>1</comment_count>
    <who name="Lukasz Majewski">l.majewski</who>
    <bug_when>2018-03-14 05:42:51 +0000</bug_when>
    <thetext>Please find detailed explanation of the problem (if somebody will encounter similar issue in the future):

The problem is with hardcoded paths in eSDK.

To run program from eSDK, some binaries/programs are needed from earlier installed SDK - like /opt/&lt;distro&gt;/2.4.2/sysroots/x86_64-pokysdk-linux/lib/ld-linux-x86-64.so.2

Otherwise presented below errors pop up.

This means that eSDK depends on SDK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79812</commentid>
    <comment_count>2</comment_count>
    <who name="Lukasz Majewski">l.majewski</who>
    <bug_when>2018-03-14 08:52:38 +0000</bug_when>
    <thetext>As discussed on the #yocto IRC channel - this is only a workaround. The eSDK and SDK shall work with relocating to other paths than default one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79821</commentid>
    <comment_count>3</comment_count>
    <who name="Lukasz Majewski">l.majewski</who>
    <bug_when>2018-03-14 18:36:57 +0000</bug_when>
    <thetext>Detailed SHA1s:

meta                 
meta-poky            
meta-yocto-bsp       = &quot;heads/yocto 2.4.2:342fbd6a3e57021c8e28b124b3adb241936f3d9d&quot;
meta-oe              
meta-networking      
meta-python          = &quot;rocko:dacfa2b1920e285531bec55cd2f08743390aaf57&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79823</commentid>
    <comment_count>4</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2018-03-15 01:58:11 +0000</bug_when>
    <thetext>It may not be clear from the documentation, but the eSDK isn&apos;t currently designed to ship nativesdk binaries - the assumption is that native binaries will be used instead. There are a couple of means of adding components that aren&apos;t already added through the dependency chain for the image, but they aren&apos;t particularly nice - see bug 10600 (this is something we would like to fix in future). So for the eSDK specifically you would instead be adding iperf3-native (and *not* changing TOOLCHAIN_HOST_TASK). Hope this helps.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>79824</commentid>
    <comment_count>5</comment_count>
    <who name="Lukasz Majewski">l.majewski</who>
    <bug_when>2018-03-15 04:47:25 +0000</bug_when>
    <thetext>Hi Paul,

Thank you for the reply.

(In reply to comment #4)
&gt; It may not be clear from the documentation, but the eSDK isn&apos;t currently
&gt; designed to ship nativesdk binaries - the assumption is that native binaries
&gt; will be used instead.

I see. Indeed it is a bit misleading.

&gt; There are a couple of means of adding components that
&gt; aren&apos;t already added through the dependency chain for the image, but they
&gt; aren&apos;t particularly nice - see bug 10600 (this is something we would like to
&gt; fix in future). So for the eSDK specifically you would instead be adding
&gt; iperf3-native (and *not* changing TOOLCHAIN_HOST_TASK). Hope this helps.

Yes, correct.

The approach with adding meta-extsdk-toolchain works properly for eSDK.
However, one needs to be careful if proper *-native package is found.

Thanks for help.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>