Last Comment Bug 395871 - debug build of 1_8_BRANCH fails with gcc-4.2.0 on x86_64
: debug build of 1_8_BRANCH fails with gcc-4.2.0 on x86_64
Product: Core
Classification: Components
Component: Build Config (show other bugs)
: 1.8 Branch
: x86 Linux
-- normal (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
: Gregory Szorc [:gps] (away until 2017-03-20)
Depends on:
  Show dependency treegraph
Reported: 2007-09-12 02:22 PDT by Walter Meinl
Modified: 2008-12-22 00:00 PST (History)
0 users
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Description User image Walter Meinl 2007-09-12 02:22:54 PDT
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a8pre) Gecko/2007091104 Minefield/3.0a8pre
Build Identifier: 

The build fails close before the final links
../../../../dist/lib/libembed_base_s.a(nsEmbedAPI.o): relocation R_X86_64_PC32
against `NSGlue_Warning' can not be used when making a shared object; recompile
with -fPIC

Reproducible: Always

Steps to Reproduce:

No problems with trunk builds as the whole gtkembedding was overhauled and xpcom/glue/nsDebug.cpp was removed anyway.
non-debug builds properly and also gcc-4.1.2. Probably pragma related?
Comment 1 User image Walter Meinl 2007-09-18 14:21:07 PDT
Benjamin, there's still a lot of DEFINES += -DMOZILLA_STRICT_API in embedding subdirs.

or comment out:
#ifdef MINIMO
# For minimo, we would really like to treat this as a LIBXUL
# library so that we can get the correct export defines.
in embedding/base/ the debug build compiles successfully.
However, neither solution seems to be correct, or?
Comment 2 User image Walter Meinl 2007-10-08 12:49:14 PDT
Another try was to substitute "Defines += -DMOZILLA_STRICT_API" with "DEFINES += -DXPCOM_GLUE". This changes the error message from
libembed_base_s.a(nsEmbedAPI.o): relocation R_X86_64_PC32 against `NSGlue_Warning'
libembed_base_s.a(nsEmbedAPI.o): relocation R_X86_64_PC32
against `NS_ShutdownXPCOM'
Does it need to link against both xpcom and xpcomglue? Either way the other seems to be unreachable with the present code in nsDebug.cpp.
Help of a build expert would be very appreciated
Comment 3 User image Walter Meinl 2008-12-22 00:00:57 PST
Apparently the 1_8_1 Branch is more or less not further developed. The last comment was more than a year ago, Gentoo uses the former visibility check and that works also with debug. So close this as WONT for the 1_8_1 Branch.

Note You need to log in before you can comment on or make changes to this bug.