This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Undefined symbol problem


Dan Kegel wrote:
Ichiro Barnes wrote:

I am using crosstool 0.10 to build a linux/arm linux
cross compilation environment, but my dynamically
linked executables fail to run on the target due to
undefined symbols such as 'register_frame_info'. ...

Hmm. A bit of Google searching suggests that libc.so ought to be
providing those symbols. (Is an option or a patch missing in crosstool?) See:
http://www.gnu.org/software/libc/FAQ.html#s-2.8
http://www.informatik.uni-oldenburg.de/~joey/Linux/Tips+Tricks/register-frame.html ...
I have a funny feeling the --enable-sjlj-exceptions configure option
for gcc has something to do with this.


Try comparing the output of
 objdump -T libc.so.6 | grep __register_frame
on the libc.so from the two toolchains, I betcha it's different.

Anyway, I don't know enough to really solve your problem;
you may need to ask the libc-alpha mailing list
( see http://sources.redhat.com/ml/libc-alpha/ )

Also, you might look at crosstool's README, which actually mentions the problem, and gives links and a workaround, to wit:

"When running gcc execution tests with whatever glibc is laying about,
you may get the error "error in loading shared libraries: undefined symbol: __register_frame_info"
To work around this, see register_frame_info_fix.{sh,c}
The right fix is probably to use a chroot environment and test with your
newly built glibc."

::::::::::::::
register_frame_info_fix.c
::::::::::::::
/* See
 * http://www.linuxhq.com/lnxlists/linux-gcc/lg_9902/msg00044.html
 * http://www.informatik.uni-oldenburg.de/~joey/Linux/Tips+Tricks/register-frame.html
 * http://www.rtems.com/rtems/maillistArchives/rtems-snapshots/1999/december/msg00078.html
 * http://lists.debian.org/lsb-spec/1999/lsb-spec-199903/msg00002.html
 * http://freestandards.org/pipermail/lsb-test/2002-January/000649.html
 */
__register_frame_info() {}
__deregister_frame_info() {}
::::::::::::::
register_frame_info_fix.sh
::::::::::::::
#!/bin/sh
# give a gcc as the 1st argument, flags as 2nd arg
$1 $2 -shared -o register_frame_info_fix.so register_frame_info_fix.c


-- Dan Kegel http://www.kegel.com http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045


------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]