Closed Bug 700196 Opened 14 years ago Closed 14 years ago

Unable to create libxul.so due to unresolved symbol _Unwind_GetIP from nsStackwalk.o

Categories

(Firefox Build System :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: sfink, Unassigned)

Details

Attachments

(1 file)

Attached file mozconfig —
I seem to have somehow gotten my system into a bad state. Whenever I try to build, I get /usr/bin/ld: error: hidden symbol '_Unwind_GetIP' is not defined locally while trying to build libxul.so. That's when linking with gold. With ld.bfd, I get ../../xpcom/base/nsStackWalk.o: In function `unwind_callback': /home/sfink/src/MI-jitprofiler/xpcom/base/nsStackWalk.cpp:1537: undefined reference to `_Unwind_GetIP' That symbol is from xpcom/base/nsStackwalk.cpp, from #include <libunwind.h> (after -including config/gcc_hidden.h). % objdump -t nsStackWalk.o | grep GetIP 0000000000000000 *UND* 0000000000000000 .hidden _Unwind_GetIP It is defined in /lib64/libgcc_s.so.1: % objdump -T /lib64/libgcc_s.so.1 | grep GetIP 000000378e40d680 g DF .text 0000000000000015 GCC_4.2.0 _Unwind_GetIPInfo 000000378e40d670 g DF .text 0000000000000008 GCC_3.0 _Unwind_GetIP Adding -lgcc_s to the libxul.so link line doesn't change anything. This is with an unmodified mozilla-inbound checkout (cf8b201e8980).
I found a place where I could do a comparative build, and the difference is that the undefined symbol is not hidden in a proper build. So it's a compile problem, I guess? (Does it even make sense for undefined symbols to be hidden? What does that mean?)
Looks like it's because at some point I installed libunwind into /usr/local, and /usr/local/include is (mysteriously) on my include path.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → INVALID
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: