[oe] [PATCH] dbus: fix building for mipsel.

Graham Gower graham.gower at gmail.com
Thu Jul 1 07:18:07 UTC 2010


On 1 July 2010 16:32, Khem Raj <raj.khem at gmail.com> wrote:
> On Tue, Jun 29, 2010 at 9:24 PM, Graham Gower <graham.gower at gmail.com> wrote:
>> Mipsel lives in a bizarro world where the following error happens:
>>
>> |   CCLD   dbus-daemon-launch-helper
>> | /home/grg/oe2/tmp/cross/mipsel/lib/gcc/mipsel-oe-linux/4.4.4/../../../../mipsel-oe-linux/bin/ld: can not make stub section: File format not recognized
>> | /home/grg/oe2/tmp/cross/mipsel/lib/gcc/mipsel-oe-linux/4.4.4/../../../../mipsel-oe-linux/bin/ld: failed to set dynamic section sizes: File format not recognized
>> | collect2: ld returned 1 exit status
>>
>> Fix as noted by the openwrt folks:
>> https://dev.openwrt.org/changeset/18308
>>
>> Signed-off-by: Graham Gower <graham.gower at gmail.com>
>> ---
>>  recipes/dbus/dbus.inc |    3 +++
>>  1 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/recipes/dbus/dbus.inc b/recipes/dbus/dbus.inc
>> index ec66960..41ec9d1 100644
>> --- a/recipes/dbus/dbus.inc
>> +++ b/recipes/dbus/dbus.inc
>> @@ -38,6 +38,9 @@ EXTRA_OECONF = "\
>>  do_compile_prepend_mipsel() {
>>        sed -i -e 's/\-fPIE//' -e 's/\-pie\ \-Wl\,\-z\,relro//' bus/Makefile
>>  }
>> +do_configure_prepend_mipsel() {
>> +       sed -i -e 's/-Wl,--gc-sections/--gc-sections/' ${S}/configure
>> +}
>
> this changes this to be a compiler option instead of
> gcc driver passing it to link step and gcc does not
> have such option so it should error out. I wonder how
> does this work. just removing it fully would be
> understandable if say gc-sections does not work in ld.

Hmmm. Right you are.

Digging further, I see the configure script checks if gcc compiles a
dummy program with those options and uses them if it succeeds. Gcc
does indeed error out in this case, causing the configure script to
not use --gc-sections.

-Graham




More information about the Openembedded-devel mailing list