https://bugs.dragonflybsd.org/https://bugs.dragonflybsd.org/favicon.ico?16293952082013-02-09T16:37:32ZDragonFlyBSD bugtrackerDragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112552013-02-09T16:37:32Zmarino
<ul></ul><p>Bad configure test?<br />"no .eh_frame_hdr table" shows up in world build too when crt1.o is created.</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112562013-02-09T17:16:30Zmarino
<ul></ul><p>It seems this crt1.o error happens on i386 only. The x86_64 version is built differently and doesn't produce the error during world build.</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112622013-02-12T08:00:40Zdavshao
<ul></ul><p>This is what I am having to do to keep the i386 port working with current master pkgsrc:</p>
<p>1) As reported in<br /><a class="external" href="http://bugs.dragonflybsd.org/issues/2505">http://bugs.dragonflybsd.org/issues/2505</a></p>
<p>i386 master current as of</p>
<p>commit c090922fe69732915227914768a9c4f9190fdece<br />Date: Mon Feb 11 18:02:07 2013 +0100</p>
<pre><code>libdialog: Increase MAX_LEN to 4096 (bug 2480)</code></pre>
fails
<ol>
<li>make buildkernel</li>
</ol>
<p>2) I have reverted for my local branches most of</p>
<p>commit 6100d1de78f204e56aabe46c57a31d6a686e8f55<br />Date: Sun Feb 3 10:12:27 2013 +0100</p>
<pre><code>Promote GCC 4.7 to be the default compiler</code></pre>
<p>and</p>
<p>commit c06d54ec4d64cac02631af7af5668d43d2f6abd1<br />Date: Tue Feb 5 20:54:06 2013 +0100</p>
<pre><code>Fix some more things related to the switch to gcc47.</code></pre>
<p>3) I am currently testing reverting</p>
<p>commit 54b03ea7a27868387d5f124816d13c48e32ff735<br />Date: Mon Feb 11 09:00:13 2013 +0100</p>
<pre><code>bsd.cpu.mk: Set gcc47 as default</code></pre>
<p>4) It is possible to build only the kernel with gcc44, something like</p>
<ol>
<li>make CCVER=gcc44 buildkernel</li>
</ol>
<p>However this configuration when combined with following the latest pkgsrc master makes running modular-xorg with wm's such as openbox, xfce4, or kde4 impossible.</p>
<p>5) After reverting the commits listed above, I had to go back and make replace some combination including</p>
<p>python27<br />libdrm<br />MesaLib<br />modular-xorg-server</p>
<p>After replacing using a default gcc44 system, startx works again for any of openbox, xfce4, or kde4.</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112632013-02-12T16:16:40Zmarino
<ul></ul><p>I think we need to state clearly what's going on.<br />The .eh_frame header isn't being created. This affects c++ programs that use exceptions. The likely cause is that crt1.o is built by gcc47 and gcc44 doesn't like it. The probable fix is the have a gcc-44 built crt1.o, e.g. /usr/lib/crt1.44.o.</p>
<p>The error isn't fatal, programs built with this error should work. The configuration script is choking on the unexpected error.</p>
<p>While I am trying to come up with the right fix (I already bricked by i386 system with the first attempt), the better approach is to rebuild all packages with gcc47 (I think). With the latest master, and removing all previous packages, rebuilding will be done with gcc47 unless DRAGONFLY_CCVER?=gcc44 is in the /usr/pkg/etc/mk.conf file.</p>
<p>I'm taking the issue seriously but I can't try again until this weekend and I have to recover the i386 machine first.</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112642013-02-12T17:05:08Zmarino
<ul><li><strong>Assignee</strong> set to <i>dragonflybsd1</i></li></ul> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112652013-02-13T04:34:16Zdillon
<ul></ul><p>:Issue <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table ... (Closed)" href="https://bugs.dragonflybsd.org/issues/2511">#2511</a> has been updated by marino.<br />:<br />:While I am trying to come up with the right fix (I already bricked by i386 system with the first attempt), the better approach is to rebuild all packages with gcc47 (I think). With the latest master, and removing all previous packages, rebuilding will be done with gcc47 unless DRAGONFLY_CCVER?=gcc44 is in the /usr/pkg/etc/mk.conf file.<br />:<br />:I'm taking the issue seriously but I can't try again until this weekend and I have to recover the i386 machine first.<br />:----------------------------------------</p>
<pre><code>Since we also had to change the floating point frame size to support<br /> the new FP instructions we have two things now that really would like<br /> a complete rebuild with 4.7.</code></pre>
<pre><code>I think it would be an excellent time to switch pkgsrc master builds<br /> to 4.7.</code></pre>
<pre><code>-Matt</code></pre> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112702013-02-18T01:08:41Zmarino
<ul></ul><p>Can you update to the latest world, at least to here:<br /><a class="external" href="http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/4a0e0cd7377c45dc21d5c71bcab931b5e5727e74">http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/4a0e0cd7377c45dc21d5c71bcab931b5e5727e74</a></p>
<p>and try to build cairo again?<br />Thanks</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112742013-02-18T18:02:18Zdavshao
<ul></ul><p>The good news is that on an i386 system, nothing enabled in /etc/make.conf, no debugging enabled in /usr/pkg/etc/mk.conf, I was able to build cairo with no errors from scratch after completely replacing pkgsrc packages.</p>
<p>The bad news is still on certain systems, even x86_64 ones, the kernel does not build as noted in</p>
<p><a class="external" href="http://bugs.dragonflybsd.org/issues/2505">http://bugs.dragonflybsd.org/issues/2505</a></p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112752013-02-18T18:21:46Zmarino
<ul></ul><p>Is there reason to think 2505 and 2511 are related?</p>
<p>2511 is about missing .eh_frame_hdr which I believe is now fixed and thus this bug report can be closed.<br />If you have additional information about 2505 then post there -- it's not common, nobody sees a pattern yet. I've never seen it.</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112772013-02-19T06:47:20Zdavshao
<ul></ul>With the present patches, modular-xorg and xfce4 from pkgsrc current master compile fine on i386, including cairo, using the now default gcc47. The problem is when one goes to start pkgsrc modular x.org, it hangs after showing the display resolution detected. Rebuilding libdrm and modular-xorg-server with
<ol>
<li>env CCVER=gcc44 bmake replace clean<br />allows startx with .xinitrc of<br />exec /usr/pkg/bin/startxfce4<br />to start up xfce4 as expected.</li>
</ol>
<p>The current patches now allow programs such as cairo to compile, but it is not clear to me the functionality is as required.</p>
<p>On the other hand, apparently current pkgsrc xulrunner and firefox 18.0.2 only compile with CCVER=gcc47 due to the additional requirement of gcc 4.5 or higher.</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=112782013-02-19T07:17:35Zmarino
<ul></ul><p>it's not clear what you mean by "present patches" and "current patches".<br />I assume you mean the current state of the master branch.</p>
<p>To be clear, I don't think gcc47 is miscompiling anything.<br />If a package doesn't work after being compiled with gcc47, then the problem is likely with the package. This is increasingly likely with the old xorg server that pkgsrc has.</p>
<p>BTW - it's news to be that xulrunner and firefox now require at least gcc 4.5. It's good to know that.</p> DragonFlyBSD - Bug #2511: /usr/libexec/binutils222/elf/ld.bfd: error in /usr/lib/crt1.o(.eh_frame); no .eh_frame_hdr table will be created.https://bugs.dragonflybsd.org/issues/2511?journal_id=113092013-03-01T15:19:18Zmarino
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Closed</i></li></ul><p>Please reopen if it is felt issue is not yet resolved.</p>