Re: Re: Moved virtual cwd stuff to TSRM

From: Date: Tue, 05 Sep 2000 12:03:14 +0000
Subject: Re: Re: Moved virtual cwd stuff to TSRM
References: 1 2  Groups: php.dev 
Request: Send a blank email to php-dev+get-32130@lists.php.net to get a copy of this message
Hi, > >>If this still happens please send a backtrace? Type bt after the crash > > > >www@marvin ~/compil/php4-200009041545>gdb php > >GDB is free software and you are welcome to 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. > >GDB 4.16 (i386-netbsd), Copyright 1996 Free Software Foundation, Inc... > >(gdb) run > >Starting program: > /nfs/s5/space/users/guest/www/compil/php4-200009041545/php > >bt > > > >Program received signal SIGSEGV, Segmentation fault. > >0x7ee14 in virtual_file_ex (state=0x0, > >path=0xefbfcea8 "/usr/space/www/etc/httpd/conf/php_cgi/php.ini", > >verify_path=0) at tsrm_virtual_cwd.c:332 > >332 CWD_STATE_COPY(old_state, state); > >(gdb) bt > >#0 0x7ee14 in virtual_file_ex (state=0x0, > >path=0xefbfcea8 "/usr/space/www/etc/httpd/conf/php_cgi/php.ini", > >verify_path=0) at tsrm_virtual_cwd.c:332 > >(gdb) > > Can you please compile with --enable-debug? Something seems screwed up > here > and you don't really have a back trace. Is it compiling with -g? > The crash doesn't make much sense if it's coming from expand_filepath() > which is what I think but it might be from some other place. I compiled again with --enable-debug but it didn't change php size (6MB) so the debug build is default here. I got exactly the same backtrace. Why --enable-debug doesn't enable -g2 (just -g) ? Maybe it would help. I compiled the same snapshot on Linux and got no segfaults, therefore, as for previous post-4.0.2 snaphots, the version number is still 4.0.2 (not 4.0.3-dev) shown via phpinfo() or via ./php -v So, I think it comes from *BSD, I tried compiling php4-200009050345 snapshot on NetBSD 1.4.2 with egcs-2.91.60 with this configure line: ./configure --enable-debug --without-mysql --without-gd --enable-discard-path but it failed compiling (below is how to manually solve it) gcc -I. -I/nfs/s5/space/users/guest/www/compil/php4-200009050345/ -I/nfs/s5/space/users/guest/www/compil/php4-200009050345 -I/nfs/s5/space/users/guest/www/compil/php4-200009050345/main -I/nfs/s5/space/users/guest/www/compil/php4-200009050345/Zend -I/nfs/s5/space/users/guest/www/compil/php4-200009050345 -I/nfs/s5/space/users/guest/www/compil/php4-200009050345/ext/xml/expat/xmltok -I/nfs/s5/space/users/guest/www/compil/php4-200009050345/ext/xml/expat/xmlparse -I/nfs/s5/space/users/guest/www/compil/php4-200009050345/TSRM -I/usr/pkg/include -DXML_BYTE_ORDER=12 -g -O2 -Wall -o php stub.o .libs/libphp4.a -lgdbm -lresolv -lm -lcrypt -lresolv -lgdbm -lresolv -lm -lcrypt -lresolv ld: -lgdbm: no match collect2: ld returned 1 exit status *** Error code 1 Stop. *** Error code 1 Stop. Can there be an option to compile --without-dbm (any of them) ? See bug #5746 config.log says: configure:10052: checking for gdbm_open in -lgdbm configure:10071: gcc -o conftest -g -O2 -I/usr/pkg/include -L/usr/pkg/lib conf test.c -lgdbm -lresolv -lm -lcrypt -lresolv 1>&5 configure:10225: checking preferred dbm library configure:10246: checking for gdbm.h configure:10256: gcc -E -I/usr/pkg/include conftest.c >/dev/null 2>conftest.out configure:10536: checking whether to enable DBA configure:10790: checking for GDBM support configure:11025: checking for NDBM support However, I finished compiling it manually by adding -L/usr/pkg/lib to the gcc line and I could finally test php and it works on this platform. It seems more specific either to NetBSD 1.3.3 and gcc 2.7.2.2 or some module, I'll try more combinations later. -- Olivier.Cahagne@epita.fr

« previous php.dev (#32130) next »