BlackConnect's build on Linux is broken now

RESOLVED FIXED

Status

Core Graveyard
Java to XPCOM Bridge
RESOLVED FIXED
17 years ago
3 years ago

People

(Reporter: Alexei V. Mokeev, Assigned: Igor Kushnirskiy)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

17 years ago
When try to build BlackConnect on Linux with latest sources
(BC source from 05/15/2001 & debug Mozilla from 05/14/2001)
following error catched:
c++ -I/usr/X11R6/include -fno-rtti -fno-exceptions -Wall -Wconversion
-Wpointer-arith -Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth
-pedantic -Wno-long-long -pipe -pthread  -DDEBUG -DDEBUG_avm -DTRACING -g
-I../public -I../src -shared -Wl,-h -Wl,libbcorb.so -Wl,-Bsymbolic
-L../../../../dist/bin -lxpcom  -o libbcorb.so  bcORBComponent.o
../src/Allocator.o ../src/Call.o ../src/Marshaler.o ../src/ORB.o
../src/UnMarshaler.o ../src/util.o     -ldl -lm  -lc   
bcORBComponent.o: In function `bcORBComponent::AddRef(void)':
/export2/avm/testbuild/bc1/mozilla/java/xpcom/connect/xpcom/bcORBComponent.cpp:43:
undefined reference to `PR_AtomicIncrement'
collect2: ld returned 1 exit status
gmake[2]: *** [libbcorb.so] Error 1

These errors can be fixed by Makefiles correction.
Add $(NSPR_LIBS) to DSO_LDOPTS variable in following makefiles:
java/loader/Makefile.in
java/src/Makefile.in
wrappers/Makefile.in
xpcom/Makefile.in
connect/xpcom/Makefile.in
(Assignee)

Comment 1

17 years ago
I could not build mozilla on linux because of the same problem
--
c++ -I/usr/X11R6/include -fno-rtti -fno-exceptions -Wall -Wconversion
-Wpointer-arith -Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth
-pedantic -Wno-long-long -pipe -pthread  -DDEBUG -DDEBUG_idk -DTRACING -g
-I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include
-I/usr/X11R6/include  -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2
-I/usr/lib/glib/include -I/usr/X11R6/include -shared -Wl,-h -Wl,libgfx_gtk.so
-Wl,-Bsymbolic -o libgfx_gtk.so  nsPrintdGTK.o XIE.o scale.o
nsDeviceContextGTK.o nsDeviceContextSpecFactoryG.o nsDeviceContextSpecG.o
nsDrawingSurfaceGTK.o nsFontMetricsGTK.o nsGfxFactoryGTK.o nsGraphicsStateGTK.o
nsImageGTK.o nsRegionGTK.o nsGCCache.o nsRenderingContextGTK.o nsScreenGtk.o
nsScreenManagerGtk.o nsPrintOptionsGTK.o     -L/usr/lib -L/usr/X11R6/lib -lgtk
-lgdk -rdynamic -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm -L../../../dist/bin
-lxpcom -L../../../dist/bin -L/ws1/mozilla/dist/lib -lplds4 -lplc4 -lnspr4
-lpthread -ldl -lc  -lgkgfx  -L/usr/lib -lgdk_pixbuf -L/usr/lib -L/usr/X11R6/lib
-lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm -lXIE
-lgtksuperwin -L../../../dist/bin -lmozjs  -ldl -lm  -lc   
scale.o: In function `pixops_scale_nearest':
/ws1/mozilla/gfx/src/gtk/scale.c:250: undefined reference to `PR_Assert'
collect2: ld returned 1 exit status
gnumake[3]: *** [libgfx_gtk.so] Error 1
gnumake[3]: Leaving directory `/ws1/mozilla/gfx/src/gtk'
gnumake[2]: *** [install] Error 2
gnumake[2]: Leaving directory `/ws1/mozilla/gfx/src'
gnumake[1]: *** [install] Error 2
gnumake[1]: Leaving directory `/ws1/mozilla/gfx'
make: *** [install] Error 2
-
--

I suggest to wait with the fix until they fix the build.
My thinking is that it'll probably fix this bug as well
(Reporter)

Comment 2

17 years ago
Strange. Mozilla sources for dates 
MOZ_CO_DATE=15 May 2001 06:00 PST
MOZ_CO_DATE=14 May 2001 06:00 PST
well builded for me under Linux(RH6.2, 2.2.14-12smp,egcs-2.91.66)

In your output shown, that libnspr4.so (-lnspr4) is linked into
common library(libgfx_gtk.so). 
But with last build nm show:
<Linux:avm@hercules.259> nm libnspr4.so |grep PR_Assert
000107bc T PR_Assert
(Assignee)

Comment 3

17 years ago
I figured the build problem.
A couple of days ago I installed nspr rpm (by accident). After that I've got
bunch of mozilla libs in /usr/lib
The build picked up the wrong library. That sucks.
(Assignee)

Comment 4

17 years ago
thank you for the fix.
Closing as fixed
Status: NEW → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.