[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [microblaze-uclinux] ld segfault



Hi,

I am experiencing the same problem as Rod. I am trying to create a helloworld application that use a library called Minigui.

When I compile the application, I can see the following error:

microblaze-uclinux/bin/ld: line 168: 27630 Segmentation fault $LINKER $EMUL -r -d -o "$OFILE.elf2flt" $ARG1
collect2: ld returned 139 exit status


It is probably a problem related to how I compile the library. Maybe I have some x86 objects in my library and I do not know.

Could you tell me Rod or John how to check this? You told that you used the vervose output from mb-strip. Could you explain how to do it?

Thank you very much in advance,

Kind regards




John,

Thanks so much for the input.  I finally tracked down the culprit using
the verbose output from mb-strip.  3 of the object files going into the
library were x86 objects due to a problem with one of the Makefiles.
Now that that is fixed, everything looks great.


Rod

-----Original Message-----
From: owner-microblaze-uclinux@xxxxxxxxxxxxxx [mailto:owner-microblaze-uclinux@xxxxxxxxxxxxxx] On Behalf Of John Williams
Sent: Sunday, August 19, 2007 5:13 PM
To: microblaze-uclinux@xxxxxxxxxxxxxx
Subject: Re: [microblaze-uclinux] ld segfault

Hi Rod,

Rod Green wrote:
> All,
> > I am getting a segfault when I try to link an application. That's odd - someone else reported one of those recently as well.

Does anyone
> have any pointers on how to pursue this?  I'm pretty much out of ideas.
> The program is c++ that was developed under Linux and Win32, and it
> links against a few other libraries that were developed similarly.  I
> can link other code against those libs without any trouble, but so far I
> haven't been able to come up with a minimal test case that triggers the
> segfault.  Below is the specific error I'm getting:

Are all of the libs and object code you are linking, compiled on the same (Linux) host platform?

> /home/rgreen/petalinux-v0.20-rc3/tools/linux-i386/microblaze-u
clinux-too
> ls/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../microbl
aze-uclinu
> x/bin/ld.real: bfd assertion fail

This BDF message is curious - I've never seen it before.


> /home/jwilliams/PetaLogix/petalinux-test/toolchains/microblaze
-uclinux/s
> rcs/binutils/bfd/elflink.h:5205
> /home/rgreen/petalinux-v0.20-rc3/tools/linux-i386/microblaze-u
clinux-too
> ls/bin/../lib/gcc/microblaze-uclinux/3.4.1/../../../../microbl
aze-uclinu
> x/bin/ld: line 168: 27073 Segmentation fault      $LINKER $EMUL -r -d -o
> "$OFILE.elf2flt" $ARG1
> collect2: ld returned 139 exit statusthe -f parameter to follow forks
> > I am using the tools from petalinux-v0.20-rc3.tar.gz.  Any help would be
> appreciated.

Can you cut and paste the complete command line that causes the segfault? If so, enter it on the commandline, make sure it triggers the error, then maybe try running strace on it:

  $ strace commandline

you might need the -f parameter to straec, to follow forked children.

Of course a test case would be helpful but I understand this might be hard with proprietary code. Even the process of trying to strip down the offending app / library can be informative - if the error suddenly goes away, what changed?

Regards,

John
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/


___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/




___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/