Re: Building firefox on debian sid



On Fri, 2008-03-07 at 22:13 +0100, Richard Renard wrote:
> Hi list,

Moderated through and CC'ing you, since you're not subscribed. Please
subscribe to the list before posting. :)

> I ran into some problem while compiling firefox on debian sid when
> building 2.21.9x.
> 
> error is:
> g++ -I/home/garnome/garnome/include  -fno-rtti -fno-exceptions -Wall
> -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth
> -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -pedantic
> -I/home/garnome/garnome/include -L/home/garnome/garnome/lib -O2 -pipe
> -fshort-wchar -pthread -pipe  -DNDEBUG -DTRIMMED -O -fPIC -shared
> -Wl,-z,defs -Wl,-h,libxpcom_compat_c.so -o libxpcom_compat_c.so
> nsXPCOMObsolete.o nsRegistry.o    -Wl,--export-dynamic
> -L/home/garnome/garnome/lib   -L../../../dist/bin -lxpcom -lxpcom_core
> -L../../../dist/bin -L../../../dist/lib -lplds4 -lplc4 -lnspr4
> -L/home/garnome/garnome/lib -lpthread -ldl -L../../../dist/lib
> -lxpcom_compat  -Wl,--version-script
> -Wl,../../../build/unix/gnu-ld-scripts/components-version-script
> -Wl,-Bsymbolic -ldl -lm
> nsXPCOMObsolete.o:(.data.rel.ro+0x18): undefined reference to
> `nsFileSpecImpl::Create(nsISupports*, nsID const&, void**)'
> nsXPCOMObsolete.o:(.data.rel.ro+0x50): undefined reference to
> `nsDirectoryIteratorImpl::Create(nsISupports*, nsID const&, void**)'
> /usr/bin/ld: libxpcom_compat_c.so: hidden symbol
> `nsFileSpecImpl::Create(nsISupports*, nsID const&, void**)' isn't
> defined
> /usr/bin/ld: final link failed: Nonrepresentable section on output
> collect2: ld returned 1 exit status
> make[4]: *** [libxpcom_compat_c.so] Error 1
> make[4]: Leaving directory
> `/home/garnome/src/garnome-2.21.92/bootstrap/firefox/work/main.d/mozilla/xpcom/obsolete/component'
> make[3]: *** [libs] Error 2
> make[3]: Leaving directory
> `/home/garnome/src/garnome-2.21.92/bootstrap/firefox/work/main.d/mozilla/xpcom/obsolete'
> make[2]: *** [tier_2] Error 2
> make[2]: Leaving directory
> `/home/garnome/src/garnome-2.21.92/bootstrap/firefox/work/main.d/mozilla'
> make[1]: *** [default] Error 2
> 
> 
> After some google-ing i found out about bug #377178 (in debian bts)
> where it is said that there is a visibility problem with gcc-4.2.
> 
> The problem is solved by building firefox with
> "VISIBILITY_FLAGS=-fvisibility=hidden" as environment variable, then
> build and install process went fine when running:
> 
> make -C /home/garnome/src/garnome-2.21.92/bootstrap/firefox install
> VISIBILITY_FLAGS=-fvisibility=hidden
> 
> I don't know if it is debian or gcc-4.2 specific, maybe the problem
> can be referenced in the faq.

Thanks for the note and fix, Richard. :)

I do believe this to be either a GCC bug, or a problem to be fixed by
Firefox. The latter usually also applies, if the former is true. ;)
After all, FF does already include some visibility checks.

However, it just works for me, GCC 4.2.2. So this indeed might be
limited to the exact GCC version shipped by Debian (at that time).

I don't think this needs to be covered in the FAQ. This is the first
time I have come across this issue. However, due to your post we now got
another data point that should be easily google'able really soon now.

  guenther


-- 
char *t="\10pse\0r\0dtu\0  ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4";
main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1:
(c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}



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