Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Wed, 11 Feb 2004 23:35:39 +0100 From: "Gerrit P. Haase" Organization: Esse keine toten Tiere Message-ID: <2934478737.20040211233539@familiehaase.de> To: Wolfgang Schnerring CC: cygwin AT cygwin DOT com Subject: Re: WML (perl-based program) segfaults In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Hallo Wolfgang, Am Dienstag, 10. Februar 2004 um 16:26 schriebst du: > Hello! > I had used WML (offline HTML generator, Perl-based, version 2.0.9, > ) happily under Cygwin with no problems whatsoever. > Then along came some system-upgrade[1], and boom, eperl (a > subcomponent of WML) just dies when trying to open a file. (That > means, e.g. "eperl --help" produces some output, so the program > doesn't *completely* just die) The other WML-components still work > just fine. > I'm no expert on debugging this kind of things, but I ./configure'd > WML with --enable-debug and was able to get this from gdb: > ### > $ gdb eperl > This GDB was configured as "i686-pc-cygwin"... > Minimal symbols from eperl.exe...(no debugging symbols found)... > [I think that's strange, as I *did* say --enable-debug] Try also to define some debugging flags for the tools, hmmm, in the eperl configure is already defined: CFLAGS='-g' && LDFLAGS='-g', maybe it is neccessary to rebuild perl with symbols too? > (gdb) run README > [this just proves the point that the actual file doesn't matter] > Starting program: > /cygdrive/d/wosc/install/Cygwin/wml-2.0.9/wml_backend/p3_eperl/eperl.exe > README > Program received signal SIGSEGV, Segmentation fault. > 0x1000ad60 in cygperl5_8_2!Perl_malloc () from /usr/bin/cygperl5_8_2.dll > (gdb) bt > #0 0x1000ad60 in cygperl5_8_2!Perl_malloc () from /usr/bin/cygperl5_8_2.dll > #1 0x1007254c in cygperl5_8_2!Perl_sv_add_arena () from /usr/bin/cygperl5_8_2.dll > #2 0x1007dc8b in cygperl5_8_2!Perl_newSVpvn () from /usr/bin/cygperl5_8_2.dll > #3 0x10058488 in cygperl5_8_2!Perl_savesharedpv () from /usr/bin/cygperl5_8_2.dll > #4 0x100586b7 in cygperl5_8_2!Perl_vmess () from /usr/bin/cygperl5_8_2.dll > #5 0x10059171 in cygperl5_8_2!Perl_vcroak () from /usr/bin/cygperl5_8_2.dll > #6 0x1005963f in cygperl5_8_2!Perl_croak_nocontext () from /usr/bin/cygperl5_8_2.dll > [this sequence keeps repeating over and over] > ### > Does anybody have an idea what I might be looking at here, and what I > could do about it? > Thanks for your help, > Wolfgang > [1] from what I know, it might have been core cygwin.dll 1.5-3 to -4 > or perl-5.8.0 to -5.8.2, but that's just me guessing, because > reverting to the old versions doesn't solve the problem. > This just proves the saying "Never touch a running system"... :-( > Current Versions are cygwin-1.5.7-1 and perl-5.8.2-1. The first sentence at this website is: "Support for Perl 5.8.0 added in WML 2.0.9" Maybe it just won't work with perl-5.8.2 yet? Also the configure script is kind of buggy as it doesn't find the already installed modules: > CHECK: Perl Language > checking for Perl language... /bin/perl v5.008 > checking for Perl module Getopt::Long (2.16)... syntax error at -e line 1, near "require Getopt::Long 2.16" > Execution of -e aborted due to compilation errors. > not found $ perl -e 'use Getopt::Long; print $Getopt::Long::VERSION;' 2.34 [...] > checking for Perl module IO::File (1.07)... syntax error at -e line 1, near "require IO::File 1.07" > Execution of -e aborted due to compilation errors. > not found $ perl -e 'use IO::File; print $IO::File::VERSION;' 1.10 > checking for Perl module Term::ReadKey (2.11)... syntax error at -e line 1, near "require Term::ReadKey 2.11" > Execution of -e aborted due to compilation errors. > not found $ perl -e 'use Term::ReadKey; print $Term::ReadKey::VERSION;' 2.21 > checking for MakeMaker's private install paths... ok 1 hour later: I'm still trying to get it configured... it is a terrible package, I wonder that it was possible to build it under Cygwin;) When trying to install the modules used by WML I see this: > CPAN.pm: Going to build R/RB/RBS/File-PathConvert-0.9.tar.gz > > > *** THIS MODULE (File::PathConvert) IS DEPRECATED. **** > > There are several known bugs, and it is not being actively > maintained since all functionality is now available in > modules (Cwd.pm and File::Spec) bundled in every Perl > distribution of recent vintage. This version is provided to > fix a few bugs and to get the word out about the > deprecation. > > Please use Cwd::abs_path() instead of > File::PathConvert::realpath() and File::Spec methods instead > of all other path manipulation functions in this module. > > If you use setfstype, you probably want to access a File::Spec::Foo > module for the appropriate operating system. > > There is also a version of File::Spec on CPAN for backwards > compatability. > > Thank you, > > Barrie Slaymaker Ok, now running: ./configure --with-openworld --enable-debug and getting: CHECK: Perl Language checking for Perl language... /bin/perl v5.008 checking for Perl module Getopt::Long (2.16)... found checking for Perl module Bit::Vector (5.2)... found checking for Perl module File::PathConvert (ANY)... found checking for Perl module Image::Size (2.6)... found checking for Perl module IO::File (1.07)... found checking for Perl module Term::ReadKey (2.11)... found checking for MakeMaker's private install paths... ok FINE;) runing make ends here: mp4h: ERROR: failed to initialise modules: unknown error And running make in the eperl subdirectory gives me an executable which shows the same symptoms as you described: Program received signal SIGSEGV, Segmentation fault. 0x1000ad60 in cygperl5_8_2!Perl_malloc () from /bin/cygperl5_8_2.dll Two of the executables are broken for me now, I consider to stop working on this now. Maybe you should ask the upstream maintainer if it is possible to use WML with perl-5.8.2 or not. Details about support is in the top sourcedir SUPPORT file. Some final words: Most of Engelschalls software is completely out of date. Gerrit -- =^..^= -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/