Closed
Bug 60730
Opened 24 years ago
Closed 24 years ago
Trunk build fails on OpenBSD
Categories
(SeaMonkey :: Build Config, defect, P3)
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: mozilla, Assigned: cls)
Details
Attachments
(1 file)
1.22 KB,
patch
|
Details | Diff | Splinter Review |
I'm trying to build from the trunk on OpenBSD. At first I thought it might be
my build environment, but I tried building M17 and M18 and both of them compiled
without any problems. (Of course both of them segfault on startup, but that's
another story.) I recently converted my Linux workstation at work to OpenBSD,
so I'd really like to get mozilla working on it. :)
hermes:mozilla {138} uname -a
OpenBSD hermes 2.8-current DAVID#0 i386
hermes:mozilla {139} gcc -v
Reading specs from /usr/lib/gcc-lib/i386-unknown-openbsd2.8/2.95.3/specs
gcc version 2.95.3 19991030 (prerelease)
hermes:mozilla {131} cat build_mozilla
#! /bin/sh
export CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
cd ~/mozilla/
cvs co -f mozilla/client.mk
cd mozilla/
gmake -f client.mk $1 $2 $3 $4 $5
hermes:mozilla {147} cat ~/.mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-opt
ac_add_options --disable-debug
ac_add_options --disable-dtd-debug
ac_add_options --enable-ender-lite
ac_add_options --disable-idltool
ac_add_options --disable-tests
ac_add_options --enable-cpp-rtti
ac_add_options --enable-mathml
ac_add_options --enable-mng
ac_add_options --enable-optimize
ac_add_options --enable-strip-libs
ac_add_options --enable-svg
ac_add_options --enable-x11-shm
ac_add_options --enable-xterm-updates
ac_add_options --with-extensions=all
ac_add_options --with-gtk
The compile goes for a long time and gets near the end of the build. Then the
following error occurs. Shouldn't this have been exported? Were any changes
made with how idl works, because I can compile M18 fine.
gmake[3]: Entering directory `/home/david/mozilla/mozilla/obj-opt/xpfe/bootstrap'
nsAppRunner.cpp
c++ -o nsAppRunner.o -c -DOSTYPE=\"OpenBSD2\" -DOJI -I../../dist/include
-I/usr/X11R6/include -fPIC -frtti -fno-exceptions -Wall -Wconversion
-Wpointer-arith -Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth
-Wshadow -pedantic -Wno-long-long -pthread -O -DNDEBUG -DTRIMMED
-DWIDGET_DLL=\"libwidget_gtk.so.1.0\" -DGFXWIN_DLL=\"libgfx_gtk.so.1.0\"
-I/usr/local/include -I/usr/local/include/glib -I/usr/X11R6/include
-DMOZILLA_CLIENT -include ../../config-defs.h -Wp,-MD,.deps/nsAppRunner.pp
/home/david/mozilla/mozilla/xpfe/bootstrap/nsAppRunner.cpp
/home/david/mozilla/mozilla/xpfe/bootstrap/nsAppRunner.cpp:70:
nsXRemoteClientCID.h: No such file or directory
gmake[3]: *** [nsAppRunner.o] Error 1
gmake[3]: Leaving directory
`/home/david/mozilla/mozilla/obj-opt/xpfe/bootstrap'gmake[2]: *** [install] Error 2
gmake[2]: Leaving directory `/home/david/mozilla/mozilla/obj-opt/xpfe'
gmake[1]: *** [install] Error 2
gmake[1]: Leaving directory `/home/david/mozilla/mozilla/obj-opt'
gmake: *** [build] Error 2
At first glance, it appears that the build problem comes from the fact that we
only use xremoteclient on non-monolithic builds. OpenBSD should probably be
switched to use the non-monolithic build. Pavlov, Blizzard, is the monolithic
build case still supported?
Comment 2•24 years ago
|
||
I have no idea if it's supported or not. I think that it is kept around for the
openvms folks. Doesn't openbsd support a non-monolithic build?
Nope, according to configure.in, openvms made the jump awhile ago. I would
assume openbsd could support a non-monolithic build. I'm waiting for David to
return the results of the tweak I asked him to do last night. At this point,
should we just make the default for our X-based platforms to be a non-monolithic
build? Most of them are there anyways. The only platforms I know that still
may *need* to use the monolithic build are bdsi or beos.
Reporter | ||
Comment 4•24 years ago
|
||
Last night cls suggested that I unset MOZ_MONOLITHIC_TOOLKIT and then do a 'make
clobber_all all'. I tried that and I still got the same build error. Poking
around configure.in it shows that both netbsd and freebsd are doing
non-monolithic builds, so it would make sense that it would also work for
openbsd. I added openbsd to the configure script.
Then, I went looking through the freebsd and netbsd cvs ports tree and added the
configure options that they are using in their Makefile. Here's what .mozconfig
looks like now:
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-opt
ac_add_options --disable-cpp-rtti
ac_add_options --disable-debug
ac_add_options --disable-dtd-debug
ac_add_options --disable-idltool
ac_add_options --disable-jar-packaging
ac_add_options --disable-md
ac_add_options --disable-monolithic-toolkit
ac_add_options --disable-pedantic
ac_add_options --disable-xterm-updates
ac_add_options --enable-cpp-exceptions
ac_add_options --enable-double-buffer
ac_add_options --enable-editor
ac_add_options --enable-ender-lite
ac_add_options --enable-mailnews
ac_add_options --enable-mathml
ac_add_options --enable-mng
ac_add_options --enable-optimize
ac_add_options --enable-pics
ac_add_options --enable-strip-libs
ac_add_options --enable-svg
ac_add_options --enable-tests
ac_add_options --enable-toolkit=gtk
ac_add_options --enable-x11-shm
ac_add_options --enable-xterm-updates
ac_add_options --with-extensions=all
ac_add_options --with-gtk
ac_add_options --with-jpeg=/usr/local/lib/
ac_add_options --with-png=/usr/local/lib/
ac_add_options --with-pthreads
This got me slightly past where I was before:
c++ -o nsSigHandlers.o -c -DOSTYPE=\"OpenBSD2\" -DOJI -I../../dist/include
-I/usr/X11R6/include -fPIC -fno-rtti -fexceptions -Wall -Wconversion
-Wpointer-arith -Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth
-Wshadow -Wno-long-long -pthread -O -DNDEBUG -DTRIMMED
-DWIDGET_DLL=\"libwidget_gtk.so.1.0\" -DGFXWIN_DLL=\"libgfx_gtk.so.1.0\"
-I/usr/local/include -I/usr/local/include/glib -I/usr/X11R6/include
-DMOZILLA_CLIENT -include ../../config-defs.h
/home/david/mozilla/mozilla/xpfe/bootstrap/nsSigHandlers.cpp
c++ -o mozilla-bin -fno-rtti -fexceptions -Wall -Wconversion -Wpointer-arith
-Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth -Wshadow
-Wno-long-long -pthread -O -DNDEBUG -DTRIMMED
-DWIDGET_DLL=\"libwidget_gtk.so.1.0\" -DGFXWIN_DLL=\"libgfx_gtk.so.1.0\"
-I/usr/local/include -I/usr/local/include/glib -I/usr/X11R6/include
nsAppRunner.o nsSetupRegistry.o nsSigHandlers.o -L../../dist/bin
-L../../dist/lib -lgkgfx -L../../dist/bin -lxpcom -lmozjs -ljsj -lplds4 -lplc4
-lnspr4 -lutil -lm
nsAppRunner.o: Undefined symbol
`nsAppFileLocationProvider::nsAppFileLocationProvider(void)' referenced from
text segment
nsAppRunner.o: Undefined symbol `nsMPFileLocProvider::nsMPFileLocProvider(void)'
referenced from text segment
collect2: ld returned 1 exit status
gmake[3]: *** [mozilla-bin] Error 1
gmake[3]: Leaving directory `/home/david/mozilla/mozilla/obj-opt/xpfe/bootstrap'
gmake[2]: *** [install] Error 2
gmake[2]: Leaving directory `/home/david/mozilla/mozilla/obj-opt/xpfe'
gmake[1]: *** [install] Error 2
gmake[1]: Leaving directory `/home/david/mozilla/mozilla/obj-opt'
gmake: *** [build] Error 2
Any ideas?
Reporter | ||
Comment 5•24 years ago
|
||
I eliminated most of the configure options down to a small amount:
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-opt
ac_add_options --disable-monolithic-toolkit
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --enable-optimize
ac_add_options --with-jpeg=/usr/local/lib/
ac_add_options --with-png=/usr/local/lib/
I'm now getting the nsAppRunner.o: Undefined symbol that I was getting earlier
with these options. I'm going to try a debug build now to see what happens.
Damn SHARED_LIBRARY_LIBS again. SHARED_LIBRARY_LIBS used to only be used to
link static libraries into other libraries. Now someone has extended it to the
mozilla binary even though we don't use it in our rules to build programs. For
now, just s/SHARED_LIBRARY_LIBS =/EXTRA_DSO_LIBS +=/ in xpfe/bootstrap/Makefile.in .
Reporter | ||
Comment 7•24 years ago
|
||
I made the change in the bootstrap Makefile and now get the following.
c++ -o mozilla-bin -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith
-Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth -Wshadow -pedantic
-Wno-long-long -pthread -O -DNDEBUG -DTRIMMED
-DWIDGET_DLL=\"libwidget_gtk.so.1.0\" -DGFXWIN_DLL=\"libgfx_gtk.so.1.0\"
-I/usr/local/include -I/usr/local/include/glib -I/usr/X11R6/include
nsAppRunner.o nsSetupRegistry.o nsSigHandlers.o -L../../dist/bin
-L../../dist/lib -lgkgfx -l-lxpfelocation_s -l-lmpfilelocprovider_s
-L../../dist/bin -lxpcom -lmozjs -ljsj -lplds4 -lplc4 -lnspr4 -lutil -lm
ld: -l-lxpfelocation_s: no match
collect2: ld returned 1 exit status
gmake[3]: *** [mozilla-bin] Error 1
gmake[3]: Leaving directory `/home/david/mozilla/mozilla/obj-opt/xpfe/bootstrap'
Reporter | ||
Comment 8•24 years ago
|
||
Looking at the makefile it appears I need to get rid of the -l's. Trying that now.
Reporter | ||
Comment 9•24 years ago
|
||
Woohoo! It finally compiles now but....
I get a memory fault core dump on startup. gdb shows a similar stack trace to
the one in bug 49575.
Could you attach the patch that finally allowed you to build successfully?
Reporter | ||
Comment 11•24 years ago
|
||
The checkin in bug 61368 to fix the HPUX build bugtage also fixed part of the
OpenBSD build. The only other necessary changes to build a non-debug mozilla
are in configure and configure.in. I'm attaching a patch. Note that this still
doesn't fix building a debug mozilla (bug 59021). Also, I just filed bug 61970
about runtime problems.
Reporter | ||
Comment 12•24 years ago
|
||
Reporter | ||
Comment 13•24 years ago
|
||
cls checked this in on Dec 5 at 23:22. marking fixed.
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•