<?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>726</bug_id>
          
          <creation_ts>2011-02-15 18:21:30 +0000</creation_ts>
          <short_desc>mklibs-native: do_compile fails: STT_GNU_IFUNC not declared</short_desc>
          <delta_ts>2011-02-25 09:23:55 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>OE-Core</product>
          <component>devtools / tool chain</component>
          <version>1.0</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>VERIFIED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Medium</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>1.0 M4</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dexuan Cui">dexuan.cui</reporter>
          <assigned_to name="Dexuan Cui">dexuan.cui</assigned_to>
          <cc>elizabeth.flanagan</cc>
    
    <cc>meta.mr.watcher</cc>
    
    <cc>meta.watcher</cc>
    
    <cc>nitin.a.kamble</cc>
    
    <cc>sgw</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          <cf_verified>Program Management</cf_verified>
          <cf_docchange>---</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>11801</commentid>
    <comment_count>0</comment_count>
    <who name="Dexuan Cui">dexuan.cui</who>
    <bug_when>2011-02-15 18:21:30 +0000</bug_when>
    <thetext>ERROR: Function &apos;do_compile&apos; failed (see /distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/temp/log.do_compile.22832 for further information)
ERROR: Logfile of failure stored in: /distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/temp/log.do_compile.22832
Log data follows:
| WARNING: /distro/dcui/110214/p1/bitbake/lib/bb/process.py:15: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
|   self.message = message
|
| ERROR: Function &apos;do_compile&apos; failed (see /distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/temp/log.do_compile.22832 for further information)
| NOTE: make -j 8
| make  all-recursive
| make[1]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs&apos;
| Making all in lib
| make[2]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib&apos;
| Making all in mklibs
| make[3]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib/mklibs&apos;
| Making all in utils
| make[4]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib/mklibs/utils&apos;
| make[4]: Nothing to be done for `all&apos;.
| make[4]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib/mklibs/utils&apos;
| make[4]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib/mklibs&apos;
| make[4]: Nothing to be done for `all-am&apos;.
| make[4]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib/mklibs&apos;
| make[3]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib/mklibs&apos;
| make[3]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib&apos;
| make[3]: Nothing to be done for `all-am&apos;.
| make[3]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib&apos;
| make[2]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/lib&apos;
| Making all in src
| make[2]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/src&apos;
| Making all in mklibs-readelf
| make[3]: Entering directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/src/mklibs-readelf&apos;
| g++ -DHAVE_CONFIG_H -I. -I../..   -isystem/distro/dcui/110214/p1/qemumips/tmp/sysroots/i686-linux/usr/include  -isystem/distro/dcui/110214/p1/qemumips/tmp/sysroots/i686-linux/usr/include -O2 -MT main.o -MD -MP -MF .deps/main.Tpo -c -o main.o main.cpp
| main.cpp: In function &apos;void process_symbols_provided(const Elf::section_type&lt;Elf::section_type_DYNSYM&gt;*)&apos;:
| main.cpp:87: error: &apos;STT_GNU_IFUNC&apos; was not declared in this scope
| main.cpp: In function &apos;void process_symbols_undefined(const Elf::section_type&lt;Elf::section_type_DYNSYM&gt;*)&apos;:
| main.cpp:118: error: &apos;STT_GNU_IFUNC&apos; was not declared in this scope
| make[3]: *** [main.o] Error 1
| make[3]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/src/mklibs-readelf&apos;
| make[2]: *** [all-recursive] Error 1
| make[2]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs/src&apos;
| make[1]: *** [all-recursive] Error 1
| make[1]: Leaving directory `/distro/dcui/110214/p1/qemumips/tmp/work/i686-linux/mklibs-native-0.1.31-r0/mklibs&apos;
| make: *** [all] Error 2
| FATAL: oe_runmake failed
NOTE: package mklibs-native-0.1.31-r0: task do_compile: Failed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11802</commentid>
    <comment_count>1</comment_count>
    <who name="Dexuan Cui">dexuan.cui</who>
    <bug_when>2011-02-15 18:42:25 +0000</bug_when>
    <thetext>Recently image-mklibs was added into USER_CLASSES ( in meta/conf/local.conf.sample), so mklibs-native was built and I happened to get this bug.

I&apos;m using commit b9a97e07 and buiding qemumips and qemux86 and can reproduce the issue in both builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11804</commentid>
    <comment_count>2</comment_count>
    <who name="Nitin Kamble">nitin.a.kamble</who>
    <bug_when>2011-02-15 20:28:03 +0000</bug_when>
    <thetext>I just built mklibs-native on the latest master. And It is succeeding without any failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11805</commentid>
    <comment_count>3</comment_count>
    <who name="Nitin Kamble">nitin.a.kamble</who>
    <bug_when>2011-02-15 20:36:05 +0000</bug_when>
    <thetext>what is your host distro ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11806</commentid>
    <comment_count>4</comment_count>
    <who name="Dexuan Cui">dexuan.cui</who>
    <bug_when>2011-02-15 21:37:47 +0000</bug_when>
    <thetext>(In reply to comment #2)
&gt; I just built mklibs-native on the latest master. And It is succeeding without
&gt; any failure.
(In reply to comment #3)
&gt; what is your host distro ?
Hi Nitin,
I&apos;m using 32-bit Ubuntu 9.04.  Maybe this is a distro-specific issue? 

BTW: I tried to build mklibs in Ubuntu 9.04: &quot;tar -xcf mklibs*.tar.gz; ./configure; make&quot; and also got the same failure.

So maybe Ubuntu 9.04 is too old, or some package is misssing or out of date??</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11814</commentid>
    <comment_count>5</comment_count>
    <who name="Dexuan Cui">dexuan.cui</who>
    <bug_when>2011-02-16 00:55:37 +0000</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #2)
&gt; &gt; I just built mklibs-native on the latest master. And It is succeeding without
&gt; &gt; any failure.
&gt; (In reply to comment #3)
&gt; &gt; what is your host distro ?
&gt; Hi Nitin,
&gt; I&apos;m using 32-bit Ubuntu 9.04.  Maybe this is a distro-specific issue? 
&gt; BTW: I tried to build mklibs in Ubuntu 9.04: &quot;tar -xcf mklibs*.tar.gz;
&gt; ./configure; make&quot; and also got the same failure.
&gt; So maybe Ubuntu 9.04 is too old, or some package is misssing or out of date??

I believe this issue is related to Ubuntu-9.04 since Ubuntu 10.04 is ok here:

mklibs-native has #include &lt;elf.h&gt;, since STAGING_INCDIR_NATIVE doesn&apos;t contain elf.h (elf.h is supplied by libc6-dev and we don&apos;t have eglibc-native), so the host&apos;s /usr/include/elf.h is used!
Unluckily, the libc6-dev in Ubuntu 9.04 is so old that the elf.h doesn&apos;t have the necessary macros, e.g., STT_GNU_IFUNC. BTW: The elf.h in Ubunto 10.04 is ok.

How should we handle this case? We need continue to support Ubuntu 9.04, I think.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11817</commentid>
    <comment_count>6</comment_count>
    <who name="Dexuan Cui">dexuan.cui</who>
    <bug_when>2011-02-16 01:51:42 +0000</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4)
&gt; &gt; (In reply to comment #2)
&gt; &gt; &gt; I just built mklibs-native on the latest master. And It is succeeding without
&gt; &gt; &gt; any failure.
&gt; &gt; (In reply to comment #3)
&gt; &gt; &gt; what is your host distro ?
&gt; &gt; Hi Nitin,
&gt; &gt; I&apos;m using 32-bit Ubuntu 9.04.  Maybe this is a distro-specific issue? 
&gt; &gt; BTW: I tried to build mklibs in Ubuntu 9.04: &quot;tar -xcf mklibs*.tar.gz;
&gt; &gt; ./configure; make&quot; and also got the same failure.
&gt; &gt; So maybe Ubuntu 9.04 is too old, or some package is misssing or out of date??
&gt; I believe this issue is related to Ubuntu-9.04 since Ubuntu 10.04 is ok here:
&gt; mklibs-native has #include &lt;elf.h&gt;, since STAGING_INCDIR_NATIVE doesn&apos;t contain
&gt; elf.h (elf.h is supplied by libc6-dev and we don&apos;t have eglibc-native), so the
&gt; host&apos;s /usr/include/elf.h is used!
&gt; Unluckily, the libc6-dev in Ubuntu 9.04 is so old that the elf.h doesn&apos;t have
&gt; the necessary macros, e.g., STT_GNU_IFUNC. BTW: The elf.h in Ubunto 10.04 is
&gt; ok.
&gt; How should we handle this case? We need continue to support Ubuntu 9.04, I
&gt; think.

I sent out a fix to define STT_GNU_IFUNC:
http://git.pokylinux.org/cgit.cgi/poky-contrib/commit/?h=dcui/master&amp;id=d0739d8a258c251013abd846b8c7a1c00b7e30ae</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11854</commentid>
    <comment_count>7</comment_count>
    <who name="Beth Flanagan">elizabeth.flanagan</who>
    <bug_when>2011-02-17 23:22:50 +0000</bug_when>
    <thetext>Waiting for PULL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11951</commentid>
    <comment_count>8</comment_count>
    <who name="Saul Wold">sgw</who>
    <bug_when>2011-02-22 12:17:26 +0000</bug_when>
    <thetext>http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=e2dbad7b7db7b62dee4bb5b6c28a5ab4dde08358</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>11969</commentid>
    <comment_count>9</comment_count>
    <who name="Dexuan Cui">dexuan.cui</who>
    <bug_when>2011-02-22 17:58:45 +0000</bug_when>
    <thetext>(In reply to comment #8)
&gt; http://git.pokylinux.org/cgit/cgit.cgi/poky/commit/?id=e2dbad7b7db7b62dee4bb5b6c28a5ab4dde08358

I don&apos;t meet with the bug with the commit. 
Let me VERIFY it.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>