Cygwinperl tar on Win9x (really tar)
Hello Cygwinauts, I'd like to report a problem I encountered recently try to run CPAN(.pm) on Cygwinperl to ... you know what CPAN does. My system is Win98 and I suspect from absence of reports concerning this that somehow this isn't affecting people on other-derived M$ Windows platforms. All of this is vis a vis cygwin on these platforms, of course. CPAN fails to be able to make or install modules because the system call to tar(1) returns an error (generates a SIGSEGV [?] signal) when perl tries to have tar unroll a module archive. On examination, tar is being called by perl code in the innards of CPAN.pm, with the old-style flags (switches) un-prefaced by a hyphen/dash/(-) token, e.g.: $ tar xvf foo.tar On testing, the stackdump can be caused by manually passing arguments (flags, switches) to tar(1) without a hyphen. I myself always habitually use the modern GNU-style with tar, i.e. $ tar -xvzf foo.tar.gz when I run `tar' manually or use it in scripts, so this bug never bit me before CPAN showed it to me. I can run CPAN by modifying the internal CPAN::Config hash to point toward this other `tar' program which is really a wrapper script (in CPAN::Config fully-qualified path spec). This wrapper in turn just calls real `tar' with flags corrected. -SNIP-8--CUT HERE- #!/bin/bash declare opflags='' declare -a tar_args=($@) if [ $# == 1 ] || [[ $0 != *tar ]] || [ NUL${tar_args[0]} == NUL ] then echo 12 No args or flags passed to $0, must abort with error! exit 1 else opflags=${tar_args[0]} fi if [[ $opflags != -* ]] ; then tar_args[0]=-$opflags fi # echo Going to do: exec /bin/tar [EMAIL PROTECTED] exec /bin/tar [EMAIL PROTECTED] -SNIP-8--CUT HERE- Sorry, I don't have the opportunity available to me at present to dig into winsup/ or tar's source code to try to track this down. I wanted to get something into the record now in case someone else who might have more time, gets bitten by this too and wants to try to fix it. Also, sorry, I am composing this message from Debian GNU/Linux, so I have not the opportunity to generate a cygcheck.exe output file to attach to this message. My `tar' was from cygwin release 1.13.25 and then I reverted to the previous one (whatever that was). Both tar versions manifested the same segfault. -- See my OpenPGP key at https://savannah.gnu.org/people/viewgpg.php?user_id=6050 GnuPG public key fingerprint | Only when efforts to reform society have as BD26 A5D8 D781 C96B 9936 | their point of departure the reformation of 310F 0573 A3D9 4E24 4EA6 | the inner life -- human revolution -- will they lead us with certainty to a world of lasting peace and true human security. -- Daisaku Ikeda -- 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/
Re: Cygwinperl tar on Win9x (really tar)
Soren Andersen wrote: Hello Cygwinauts, I'd like to report a problem I encountered recently try to run CPAN(.pm) on Cygwinperl to ... you know what CPAN does. My system is Win98 and I suspect from absence of reports concerning this that somehow this isn't affecting people on other-derived M$ Windows platforms. All of this is vis a vis cygwin on these platforms, of course. CPAN fails to be able to make or install modules because the system call to tar(1) returns an error (generates a SIGSEGV [?] signal) when perl tries to have tar unroll a module archive. On examination, tar is being called by perl code in the innards of CPAN.pm, with the old-style flags (switches) un-prefaced by a hyphen/dash/(-) token, e.g.: $ tar xvf foo.tar On testing, the stackdump can be caused by manually passing arguments (flags, switches) to tar(1) without a hyphen. I myself always habitually use the modern GNU-style with tar, i.e. $ tar -xvzf foo.tar.gz when I run `tar' manually or use it in scripts, so this bug never bit me before CPAN showed it to me. ... Also, sorry, I am composing this message from Debian GNU/Linux, so I have not the opportunity to generate a cygcheck.exe output file to attach to this message. My `tar' was from cygwin release 1.13.25 and then I reverted to the previous one (whatever that was). Both tar versions manifested the same segfault. I habitually use the old-style options, and have never encountered a segfault - but I'm using WinXP. I suggest you ensure that all your packages are up to date, and ensure you really are running Cygwin's tar. If the segfault persists, try reinstalling the cygwin and tar packages. If still no luck, you could try a full reinstall of Cygwin, or debugging the segfault by using gdb on an unstripped version of tar. Max. -- 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/
Re: Cygwinperl tar on Win9x (really tar)
Max Bowsher wrote: Soren Andersen wrote: Hello Cygwinauts, I'd like to report a problem I encountered recently try to run CPAN(.pm) on Cygwinperl to ... you know what CPAN does. My system is Win98 and I suspect from absence of reports concerning this that somehow this isn't affecting people on other-derived M$ Windows platforms. All of this is vis a vis cygwin on these platforms, of course. CPAN fails to be able to make or install modules because the system call to tar(1) returns an error (generates a SIGSEGV [?] signal) when perl tries to have tar unroll a module archive. On examination, tar is being called by perl code in the innards of CPAN.pm, with the old-style flags (switches) un-prefaced by a hyphen/dash/(-) token, e.g.: $ tar xvf foo.tar On testing, the stackdump can be caused by manually passing arguments (flags, switches) to tar(1) without a hyphen. I myself always habitually use the modern GNU-style with tar, i.e. $ tar -xvzf foo.tar.gz when I run `tar' manually or use it in scripts, so this bug never bit me before CPAN showed it to me. ... Also, sorry, I am composing this message from Debian GNU/Linux, so I have not the opportunity to generate a cygcheck.exe output file to attach to this message. My `tar' was from cygwin release 1.13.25 and then I reverted to the previous one (whatever that was). Both tar versions manifested the same segfault. I habitually use the old-style options, and have never encountered a segfault - but I'm using WinXP. I'm equally as skeptical that this is the root issue. I'm on W2K and no problems here. It could be a CPAN interaction issue too I suppose though. Dunno. -- Larry Hall http://www.rfk.com RFK Partners, Inc. (508) 893-9779 - RFK Office 838 Washington Street (508) 893-9889 - FAX Holliston, MA 01746 -- 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/