build errors in Firefox 1.5 using gcc 4 on Linux

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

build errors in Firefox 1.5 using gcc 4 on Linux

Reshat Sabiq
Is it not finding libstdc++, or is it because the version being used is
incompatible? I'd appreciate any feedback:

gcc   -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 -fshort-wchar -pthread
-pipe  -DNDEBUG -DTRIMMED -O -o regxpcom regxpcom.o
-L../../../dist/bin -L../../../dist/lib ../../../dist/lib/libxpcomglue.a
-L../../../dist/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl  -ldl -lm
regxpcom.o: In function `DirectoryServiceProvider::Release()':
regxpcom.cpp:(.text+0x211): undefined reference to `operator
delete(void*)'
regxpcom.o: In function `startup_xpcom()':
regxpcom.cpp:(.text+0x49b): undefined reference to `operator
new(unsigned int)'
regxpcom.o:(.gnu.linkonce.d._ZTV27nsIDirectoryServiceProvider[vtable for
nsIDirectoryServiceProvider]+0x8): undefined reference to
`__cxa_pure_virtual'
regxpcom.o:(.gnu.linkonce.d._ZTV27nsIDirectoryServiceProvider[vtable for
nsIDirectoryServiceProvider]+0xc): undefined reference to
`__cxa_pure_virtual'
regxpcom.o:(.gnu.linkonce.d._ZTV27nsIDirectoryServiceProvider[vtable for
nsIDirectoryServiceProvider]+0x10): undefined reference to
`__cxa_pure_virtual'
regxpcom.o:(.gnu.linkonce.d._ZTV27nsIDirectoryServiceProvider[vtable for
nsIDirectoryServiceProvider]+0x14): undefined reference to
`__cxa_pure_virtual'
regxpcom.o:(.gnu.linkonce.d._ZTV11nsISupports[vtable for
nsISupports]+0x8): undefined reference to `__cxa_pure_virtual'
regxpcom.o:(.gnu.linkonce.d._ZTV11nsISupports[vtable for
nsISupports]+0xc): more undefined references to `__cxa_pure_virtual'
follow
../../../dist/lib/libxpcomglue.a(nsXPCOMGlue.o): In function
`GRE_Startup':
nsXPCOMGlue.cpp:(.text+0x9d0): undefined reference to `operator
new(unsigned int)'
../../../dist/lib/libxpcomglue.a(nsGREDirServiceProvider.o): In function
`nsGREDirServiceProvider::Release()':
nsGREDirServiceProvider.cpp:(.text+0x18d): undefined reference to
`operator delete(void*)'
../../../dist/lib/libxpcomglue.a(nsGlueLinkingDlopen.o): In function
`AppendDependentLib(void*)':
nsGlueLinkingDlopen.cpp:(.text+0x19): undefined reference to `operator
new(unsigned int)'
../../../dist/lib/libxpcomglue.a(nsGlueLinkingDlopen.o): In function
`XPCOMGlueUnload()':
nsGlueLinkingDlopen.cpp:(.text+0xaa): undefined reference to `operator
delete(void*)'
../../../dist/lib/libxpcomglue.a(nsGREGlue.o): In function
`GRE_GetPathFromConfigFile(char const*, GREVersionRange const*, unsigned
int, GREProperty const*, unsigned int, char*, unsigned int)':
nsGREGlue.cpp:(.text+0x25a): undefined reference to `operator
delete[](void*)'
../../../dist/lib/libxpcomglue.a(nsINIParser.o): In function
`nsINIParser::InitFromFILE(_IO_FILE*)':
nsINIParser.cpp:(.text+0x324): undefined reference to `operator
new[](unsigned int)'
nsINIParser.cpp:(.text+0x343): undefined reference to `operator
delete[](void*)'
nsINIParser.cpp:(.text+0x43f): undefined reference to `operator
new(unsigned int)'
nsINIParser.cpp:(.text+0x4c7): undefined reference to `operator
delete(void*)'
nsINIParser.cpp:(.text+0x4d3): undefined reference to `operator
delete(void*)'
nsINIParser.cpp:(.text+0x525): undefined reference to `operator
delete(void*)'
nsINIParser.cpp:(.text+0x531): undefined reference to `operator
delete(void*)'
../../../dist/lib/libxpcomglue.a(nsINIParser.o): In function
`nsAutoPtr<nsINIParser::INIValue>::~nsAutoPtr()':
nsINIParser.cpp:(.gnu.linkonce.t._ZN9nsAutoPtrIN11nsINIParser8INIValueEED1Ev[nsAutoPtr<nsINIParser::INIValue>::~nsAutoPtr()]+0x8b): undefined reference to `operator delete(void*)'
../../../dist/lib/libxpcomglue.a(nsINIParser.o):nsINIParser.cpp:(.gnu.linkonce.t._ZN9nsAutoPtrIN11nsINIParser8INIValueEED1Ev[nsAutoPtr<nsINIParser::INIValue>::~nsAutoPtr()]+0x99): more undefined references to `operator delete(void*)' follow
collect2: ld returned 1 exit status
make[5]: *** [regxpcom] Error 1
make[5]: Leaving directory
`/home/rsa/development/c-cpp/firefox/firefox-1.5-source/mozilla/obj-i686-pc-linux-gnu/xpcom/tools/registry'
make[4]: *** [libs] Error 2
make[4]: Leaving directory
`/home/rsa/development/c-cpp/firefox/firefox-1.5-source/mozilla/obj-i686-pc-linux-gnu/xpcom/tools'
make[3]: *** [libs] Error 2
make[3]: Leaving directory
`/home/rsa/development/c-cpp/firefox/firefox-1.5-source/mozilla/obj-i686-pc-linux-gnu/xpcom'
make[2]: *** [tier_2] Error 2
make[2]: Leaving directory
`/home/rsa/development/c-cpp/firefox/firefox-1.5-source/mozilla/obj-i686-pc-linux-gnu'
make[1]: *** [default] Error 2
make[1]: Leaving directory
`/home/rsa/development/c-cpp/firefox/firefox-1.5-source/mozilla/obj-i686-pc-linux-gnu'
make: *** [build] Error 2

Packages i've got:
ii  gcc                                    4.0.1-3
The GNU C compiler
ii  gcc-3.3-base                           3.3.6-8ubuntu1
The GNU Compiler Collection (base package)
ii  gcc-4.0                                4.0.1-4ubuntu9
The GNU C compiler
ii  gcc-4.0-base                           4.0.1-4ubuntu9
The GNU Compiler Collection (base package)
ii  gcc-4.0-doc                            4.0.1-4ubuntu9
Documentation for the GNU compilers (gcc, go
ii  libgcc1                                4.0.1-4ubuntu9
GCC support library
rsa@tizosto:~/development/c-cpp/firefox/extensions/imageassistant/src/components/KDevelop$ dpkg -l | grep libstdc
ii  libstdc++5                             3.3.6-8ubuntu1
The GNU Standard C++ Library v3
ii  libstdc++6                             4.0.1-4ubuntu9
The GNU Standard C++ Library v3
ii  libstdc++6-4.0-dev                     4.0.1-4ubuntu9
The GNU Standard C++ Library v3 (development



_______________________________________________
mozilla-builds mailing list
[hidden email]
http://mail.mozilla.org/listinfo/mozilla-builds
Reply | Threaded
Open this post in threaded view
|

Re: build errors in Firefox 1.5 using gcc 4 on Linux

Frank Wein
Reshat Sabiq wrote:

> Is it not finding libstdc++, or is it because the version being used is
> incompatible? I'd appreciate any feedback:
>
> gcc   -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 -fshort-wchar -pthread
> -pipe  -DNDEBUG -DTRIMMED -O -o regxpcom regxpcom.o
> -L../../../dist/bin -L../../../dist/lib ../../../dist/lib/libxpcomglue.a
> -L../../../dist/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl  -ldl -lm
> regxpcom.o: In function `DirectoryServiceProvider::Release()':
> regxpcom.cpp:(.text+0x211): undefined reference to `operator
> delete(void*)'
> regxpcom.o: In function `startup_xpcom()':
> regxpcom.cpp:(.text+0x49b): undefined reference to `operator
> new(unsigned int)'
> regxpcom.o:(.gnu.linkonce.d._ZTV27nsIDirectoryServiceProvider[vtable for
> nsIDirectoryServiceProvider]+0x8): undefined reference to
> `__cxa_pure_virtual'
[...]

It looks like you use the wrong compiler, check if your env var CXX is
set. Normally if it's not set, configure looks for g++, but it seems
this has already failed for some people. If this env var is set, it
needs to be g++, not gcc or ccache gcc. Also see
<news:dgodl8$[hidden email]> for this problem (use Google Groups
if necessary :)).

Frank
_______________________________________________
mozilla-builds mailing list
[hidden email]
http://mail.mozilla.org/listinfo/mozilla-builds