Thursday, June 8. 2006Compiling Seamonkey snapshot from June 7th
I decided to try building a new browser the other day. The browser I have been using for over 4 months has been working great, but 4 months is pretty old, so I thought updating it would be a good idea.
Unfortunately Seamonkey developers stopped updating the snapshot directory on their ftp site, so the only way to get the latest source is via CVS. Their website is recommending the following way to do that: $ cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co mozilla/client.mk $ cd mozilla $ gmake -f client.mk checkout MOZ_CO_PROJECT=suite After I got the source, I compiled it:
./configure --prefix=/usr/local/seamonkey-jun7 --disable-jsd --disable-oji --disable-tests --disable-debug --enable-optimize --without-system-nspr --with-pthreads --without-system-zlib --with-system-jpeg=/usr/local --with-system-png=/usr/local --without-system-mng --enable-crypto --disable-universalchardet --disable-negotiateauth --disable-webservices --disable-logging --disable-gnomevfs --disable-gnomeui --enable-extensions=cookie,wallet,typeaheadfind --enable-strip --disable-installer --disable-composer --disable-xprint --disable-printing --disable-ldap --disable-mailnews --disable-freetype2 --enable-xft --disable-shared --enable-static --enable-default-toolkit=gtk2 --enable-application=suite ran make and it failed with the following error: : undefined reference to `memcpy' deflate.o(.text+0x728): In function `flush_pending': : undefined reference to `memcpy' deflate.o(.text+0xf94): In function `MOZ_Z_deflate': : undefined reference to `memset' deflate.o(.text+0x1221): In function `MOZ_Z_deflateCopy': : undefined reference to `memcpy' deflate.o(.text+0x12c0): In function `MOZ_Z_deflateCopy': : undefined reference to `memcpy' <...> gzio.o(.text+0x241): In function `gz_open': : undefined reference to `malloc' gzio.o(.text+0x28e): In function `gz_open': : undefined reference to `__error' gzio.o(.text+0x2a9): In function `gz_open': : undefined reference to `fopen' gzio.o(.text+0x2bd): In function `gz_open': : undefined reference to `fdopen' gzio.o(.text+0x30b): In function `gz_open': : undefined reference to `fprintf' gzio.o(.text+0x330): In function `gz_open': : undefined reference to `ftell' that clearly was due to ld missing the libc.so library when creating this binary. so I replaced: OS_LIBS = -lm with OS_LIBS = -lm -lc in config/autoconf.mk after that the installation finished ok. However, when I tried running it, it started segfaulting and dumping cores on me. I tried getting a backtrace to see what the problem was: $ /usr/local/seamonkey-jun7/bin/seamonkey -g <...> (gdb) run Starting program: /usr/local/seamonkey-jun7/lib/seamonkey-1.5a/seamonkey-bin (no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging sy mbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...( no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging sym bols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(n o debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symb ols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbo ls found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbol s found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no debugging symbols found)...(no d ebugging symbols found)...(no debugging symbols found)... Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 100073)] 0x29799107 in __error () from /usr/lib/libpthread.so.1 (gdb) bt #0 0x29799107 in __error () from /usr/lib/libpthread.so.1 #1 0x2978e0b7 in pthread_mutex_unlock () from /usr/lib/libpthread.so.1 #2 0x2978dbf8 in pthread_mutex_unlock () from /usr/lib/libpthread.so.1 #3 0x297959d4 in _pthread_cond_wait () from /usr/lib/libpthread.so.1 #4 0x29795dee in pthread_cond_wait () from /usr/lib/libpthread.so.1 #5 0x296eb823 in pthread_cond_wait () from /lib/libc.so.5 #6 0x28da9431 in PR_WaitCondVar () from /usr/local/seamonkey-jun7/lib/seamonkey-1.5a/libnspr4.so #7 0x28da9757 in PR_Wait () from /usr/local/seamonkey-jun7/lib/seamonkey-1.5a/libnspr4.so #8 0x28ca4c91 in nsThread::Init () from /usr/local/seamonkey-jun7/lib/seamonkey-1.5a/libxpcom_core.so #9 0x28ca6554 in nsThreadManager::GetCurrentThread () from /usr/local/seamonkey-jun7/lib/seamonkey-1.5a/libxpcom_core.so #10 0x28c5ac2d in NS_NewThread_P () from /usr/local/seamonkey-jun7/lib/seamonkey-1.5a/libxpcom_core.so <...> So, it seems like the problem is somewhere in the browser code which uses pthreads. I went back to my old browser. Will try compiling seamonkey another time. |
QuicksearchCategoriesBlog Administration |
Seamonkey 1.0.4 was released a couple of days ago and I decided to go back to the official releases for now. Seamonkey code from HEAD was giving me a lot of troubles since Feb 6, 2006. It compiled just fine on my FreeBSD 6.1-STABLE box and ran fine also.
Tracked: Aug 04, 02:42