Closed Bug 301044 Opened 19 years ago Closed 17 years ago

Installer Segmentation Fault

Categories

(SeaMonkey :: Installer, defect)

1.7 Branch
x86
Linux
defect
Not set
critical

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: delbri, Unassigned)

Details

(Keywords: crash)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021130
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20021130

When attempting to run the Mozilla Installer, a segmentation fault is
immediately encountered. Error message is:
./mozilla-installer Line 54: 2075 Segmentation fault ./mozilla-installer-bin $@



Reproducible: Always

Steps to Reproduce:
1.Download mozilla-i686-pc-linux-gnu-1.7.8-installer.tar.gz
2.Decompressed with tar zxvf moz*.tar.gz (also tried gunzip -dc moz*.tar.gz |
tar -xvf -)
3.Change directory to installer
4.Issue command ./mozilla-installer

Actual Results:  
Immediate error occurred.

Expected Results:  
Installed the software.

This error occurred in the following environment:

   Operating system: [ SuSE Linux 8.1 (i386) ]
   Host: [ linux.local, Kernel: 2.4.19-4GB (i686) ]
Severity: normal → critical
Keywords: crash
please grab a stack trace:

env LD_LIBRARY_PATH=. gdb mozilla-installer-bin
(gdb) run
[wait for crash]
(gdb) bt

paste the stack trace here
Version: unspecified → 1.7 Branch
(In reply to comment #1)
> please grab a stack trace:
> 
> env LD_LIBRARY_PATH=. gdb mozilla-installer-bin
> (gdb) run
> [wait for crash]
> (gdb) bt
> 
> paste the stack trace here

Sorry, all I get when running GDB is:

linux:~ # env LD_LIBRARY_PATH=. gdb
/root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin
GNU gdb 5.2.1
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i586-suse-linux"...(no debugging symbols found)...
(gdb) run
Starting program:
/root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin
(no debugging symbols found)...(no debugging symbols found)...[New Thread 16384
(LWP 1424)]

Program exited with code 0244.
(gdb)
hmm.  how about

env LD_LIBRARY_PATH=. ldd mozilla-installer-bin

it won't run, but will just look at the library dependencies.
The resulting library dependences are:

        libgtk-1.2.so.0 => /usr/lib/libgtk-1.2.so.0 (0x40027000)
        libgdk-1.2.so.0 => /usr/lib/libgdk-1.2.so.0 (0x40181000)
        libgmodule-1.2.so.0 => /usr/lib/libgmodule-1.2.so.0 (0x401ba000)
        libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0x401bd000)
        libdl.so.2 => /lib/libdl.so.2 (0x401e4000)
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x401e7000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x401f0000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x401fe000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x402f6000)
        libm.so.6 => /lib/libm.so.6 (0x40349000)
        libc.so.6 => /lib/libc.so.6 (0x4036c000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
that looks ok... back to gdb.  You're gdb is kinda old and I think you're
hitting one of its bugs.  But should still be able to use a core file from the
crash with gdb.  But you might have core dumps disabled.  To enable them

(sh syntax)
# ulimit -c unlimited

(or tcsh syntax)
# unlimit coredumpsize
# unlimit -h coredumpsize

then crash the installer like normal.  then

# gdb mozilla-installer-bin core.XXXXX
[core.XXXXX is the coredump file, XXXXX=whatever PID mozilla-installer-bin had]
(gdb) bt
Hello.

Ran the ulimit -c unlimited command. Then issued:
linux:~ # env LD_LIBRARY_PATH=. gdb
/root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin

But got the same error as before:

(gdb) run
Starting program:
/root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin
(no debugging symbols found)...(no debugging symbols found)...[New Thread 16384
(LWP 1424)]

Program exited with code 0244.

Attempted gdb
/root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin
core.16384 & core.1424 but got "undefined command"

Thought maybe I misunderstood and attempted regular install again. This time I
got a different error. Not sure why:

Extracting libpic4.so  ...  Fatal error -618 Couldn't open xpistub library.

Monitored with "top" to get PID. Attempted gdb core dump with that PID, but no luck.

As you might guess, I am in unfamiliar territory. Have a 9.0 SuSE box as well.
Maybe I should attempt it on that platform instead?
> Ran the ulimit -c unlimited command. Then issued:
> linux:~ # env LD_LIBRARY_PATH=. gdb
> /root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin

oh, after running ulimit -c, you don't need to run with gdb.  run
mozilla-installer like normal, and it should dump a core file when it crashes.

> Extracting libpic4.so  ...  Fatal error -618 Couldn't open xpistub library.

you got this because you ran mozilla-installer-bin directly (without setting
LD_LIBRARY_PATH)
Hello. While I haven't been successful in producing a coredump, I am certainly
learning quite a bit about gdb. After many attempts and some testing, I have
been able to get gdb to at least "attach" to the mozilla-installer process.
However, it still ends with "couldn't open xpistub library". The steps I
followed where:

1. Started mozilla-installer-bin from command prompt.
2. Used "top" to get the Installer PID (1299).
3. Started gdb.
4. Attached to PID 1299. Symbols loaded at this point.
5. Issue "Continue" at gdb prompt.
6. Then went back to Mozilla Installer and clicked next, next, then install.
Ended with open error.

Here is gdb responses:

(gdb) attach 1299
Attaching to program:
/root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin,
process 1299
[New Thread 16384 (LWP 1299)]
Symbols already loaded for /usr/lib/libgtk-1.2.so.0
Symbols already loaded for /usr/lib/libgdk-1.2.so.0
Symbols already loaded for /usr/lib/libgmodule-1.2.so.0
Symbols already loaded for /usr/lib/libglib-1.2.so.0
Symbols already loaded for /lib/libdl.so.2
Symbols already loaded for /usr/X11R6/lib/libXi.so.6
Symbols already loaded for /usr/X11R6/lib/libXext.so.6
Symbols already loaded for /usr/X11R6/lib/libX11.so.6
Symbols already loaded for /lib/libpthread.so.0
Symbols already loaded for /lib/libm.so.6
Symbols already loaded for /lib/libc.so.6
Symbols already loaded for /lib/ld-linux.so.2
Reading symbols from /usr/X11R6/lib/X11/locale/lib/common/xlcDef.so.2...done.
Loaded symbols for /usr/X11R6/lib/X11/locale/lib/common/xlcDef.so.2
Reading symbols from /usr/X11R6/lib/X11/locale/lib/common/ximcp.so.2...done.
Loaded symbols for /usr/X11R6/lib/X11/locale/lib/common/ximcp.so.2
Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
[Switching to Thread 16384 (LWP 1299)]
0x40441ee6 in poll () from /lib/libc.so.6
(gdb) continue
Continuing.

Program exited with code 0226.

You have spent quite a bit of time already, so if you would prefer to quit at
this point that is fine. I have Mozilla 1.2.1 up and running, and it works fine.
So, not having 1.7.8 is not a real issue for me. I appreciate your efforts to
this point. Thanks.
Just an FYI. I attempted this approach as well with gdb, but got same result:

(gdb) cd /root/Desktop/Downloads/mozilla1.7.8/mozilla-installer
Working directory /root/Desktop/Downloads/mozilla1.7.8/mozilla-installer.
(gdb) file mozilla-installer-bin
Load new symbol table from "mozilla-installer-bin"? (y or n) y
Reading symbols from mozilla-installer-bin...
done.
(gdb) run
Starting program:
/root/Desktop/Downloads/mozilla1.7.8/mozilla-installer/mozilla-installer-bin
(no debugging symbols found)...(no debugging symbols found)...[New Thread 16384
(LWP 1321)]

Program exited with code 0226.
(gdb)
I think comment 8 would have worked, except one thing:

1. Started mozilla-installer-bin from command prompt.

should be

1. Started mozilla-installer from command prompt.

for steps 2 and 4, you still need to use the PID of mozilla-installer-bin
Got it! I finally picked-up on what you said about running mozilla-installer and
not mozilla-installer-bin. Sorry it took me so long. Here is the trace.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 1829)]
0x4001bc30 in ?? ()
(gdb) bt
#0  0x4001bc30 in ?? ()
#1  0x40382fbb in __gconv () from /lib/libc.so.6
#2  0x4038262e in iconv () from /lib/libc.so.6
#3  0x4059ce0e in ?? ()
#4  0x4059d020 in ?? ()
#5  0x405a1781 in ?? ()
#6  0x405ade34 in ?? ()
#7  0x405acafd in ?? ()
#8  0x405ac9ef in ?? ()
#9  0x405a9c1c in ?? ()
#10 0x405aa4e9 in ?? ()
#11 0x4056a109 in ?? ()
#12 0x40023630 in ?? ()
#13 0x08063832 in nsXIEngine::LoadXPIStub(_xpistub_t*, char*) ()
#14 0x08063326 in nsXIEngine::Install(int, nsComponentList*, char*) ()
#15 0x0805d53b in nsInstallDlg::PerformInstall() ()
#16 0x0805c295 in nsInstallDlg::Next(_GtkWidget*, void*) ()
#17 0x400d1726 in gtk_marshal_NONE__NONE () from /usr/lib/libgtk-1.2.so.0
#18 0x4010e255 in gtk_handlers_run () from /usr/lib/libgtk-1.2.so.0
#19 0x4010d26b in gtk_signal_real_emit () from /usr/lib/libgtk-1.2.so.0
#20 0x4010a73e in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#21 0x40056d6e in gtk_button_clicked () from /usr/lib/libgtk-1.2.so.0
#22 0x40058a4b in gtk_real_button_released () from /usr/lib/libgtk-1.2.so.0
#23 0x400d1726 in gtk_marshal_NONE__NONE () from /usr/lib/libgtk-1.2.so.0
#24 0x4010d17e in gtk_signal_real_emit () from /usr/lib/libgtk-1.2.so.0
#25 0x4010a73e in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#26 0x40056c5e in gtk_button_released () from /usr/lib/libgtk-1.2.so.0
#27 0x400580e1 in gtk_button_button_release () from /usr/lib/libgtk-1.2.so.0
#28 0x400d1356 in gtk_marshal_BOOL__POINTER () from /usr/lib/libgtk-1.2.so.0
#29 0x4010d2b0 in gtk_signal_real_emit () from /usr/lib/libgtk-1.2.so.0
#30 0x4010a73e in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#31 0x40150584 in gtk_widget_event () from /usr/lib/libgtk-1.2.so.0
#32 0x400d115f in gtk_propagate_event () from /usr/lib/libgtk-1.2.so.0
#33 0x400cfea4 in gtk_main_do_event () from /usr/lib/libgtk-1.2.so.0
#34 0x4019a3e5 in gdk_event_dispatch () from /usr/lib/libgdk-1.2.so.0
#35 0x401cfabe in g_main_dispatch () from /usr/lib/libglib-1.2.so.0
#36 0x401cff99 in g_main_iterate () from /usr/lib/libglib-1.2.so.0
#37 0x401d0234 in g_main_run () from /usr/lib/libglib-1.2.so.0
#38 0x400cf92f in gtk_main () from /usr/lib/libgtk-1.2.so.0
---Type <return> to continue, or q <return> to quit---
#39 0x080615ce in nsXInstaller::RunWizard(int, char**) ()
#40 0x08061e66 in main ()
#41 0x40381d3e in __libc_start_main () from /lib/libc.so.6
I've never seen a stack like that.  What version of glibc do you have?  The
closest thing I could find was here:

http://lists.samba.org/archive/samba-technical/2001-August/000375.html

The stack there is consistent with yours.  Anyway, if you don't want to upgrade
your OS (which is safer than upgrading glibc), you might try a non-installer
build, although Mozilla itself might crash similarly.

You might also try tweaking your language settings (LANG environment variable).
Hello.

A few months back I was working with XML and wanted an XML Parser for C
Programs. I found one, but in order to use it I had to upgrade my glibc. So, I
downloaded and installed version 2.3.2-87 (glibc-2.3.2-87.i586.rpm). Previously
I was running 2.2.5-151.

I have not experienced any problems with my C programs or compiles. Nor with any
other installed software that depend on the C library.
QA Contact: bugzilla → general
Mozilla 1.7.8 is not supported anymore, reopen if have problems with latest Seamonkey builds.
Status: UNCONFIRMED → RESOLVED
Closed: 17 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.