Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com Message-ID: <3947BBE9.5B33C61E@ece.gatech.edu> Date: Wed, 14 Jun 2000 13:07:53 -0400 From: "Charles S. Wilson" X-Mailer: Mozilla 4.7 [en] (WinNT; U) X-Accept-Language: en MIME-Version: 1.0 To: Steve Kelem CC: kjahds AT kjahds DOT com, Cygwin , khan AT NanoTech DOT wisc DOT edu Subject: Re: Problem compiling perl module Term::ReadKey under cygwin References: <3947B531 DOT D14BF8DD AT adaptivesilicon DOT com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit *I* know of no problems using cpan updates with my perl -- it works fine for me. I haven't tried Term::ReadKey though. However, your problem is different. It's because of a recent change to cygwin -- see the recent cygwin mailing list thread entitled 'Wierd patch problem' starting with http://sourceware.cygnus.com/ml/cygwin/2000-05/msg00671.html The change to cygwin is that ANY path that contains a backslash is interpreted as a windows path, so /tmp\cc001120.base becomes "CURRENT DRIVE:\\tmp\\cc001181.base". I think you need to create a \tmp directory in the root of the drive in which you're building. So, if you're building in /usr/local/ and /usr is mounted from F:\cygwin, then create F:\tmp This is a hack to work around an error in the perlbuild scripts ('\' shouldn't be used as a path separator) but it works okay on most unices. It's just showing up now on cygwin (and only cygwin) because of the recent change in cygwin's path handling. Cygwin List: I think this argues for the recently proposed (and shot down) patch that establishes (yet another) CYGWIN= setting so that, if set, paths are interpreted as windows paths if and only if they contain ALL '\' and no '/'. If that CYGWIN= setting is unset, behavior is unchanged from the current. This is the second complaint in two days I've gotten on this cygwin-perl-/tmp issue. --Chuck Steve Kelem wrote: > > I'm getting some compilation errors when trying to install some perl > modules using cpan in cygwin 1.0 with the net updates. I'm running > Windows NT 4.0 SP6a. > > One error has to do with sgtty. Ken, do you know if that's a problem? > Does Term::ReadKey require sgtty? > I believe Chris Faylor @ Red Hat said there's no support for sgtty in > cygwin, and no plans for support. > > I installed Charles Wilson's Perl for Cygwin 1.0 (I have the CD.) on > Windows NT 4.0 SP6a. > Charles, is there a known problem with the cpan updates or the > Term::ReadKey module using your perl? > > Mumit, I've searched the cygwin archives for a solution to the collect2 > problem, and it isn't clear what the status is for this bug. > > Any idea what's wrong? I tried installing ld.exe as collect-ld.exe in > the directory with cc1.exe > > Help! > Steve Kelem > > Here's the transcript: > % gcc --version > 2.95.2 > % cpan_update > cpan shell -- CPAN exploration and modules installation (v1.54) > ReadLine support enabled > > Can't ioctl TIOCGETP: Invalid argument > Consider installing Term::ReadKey from CPAN site nearby > at http://www.perl.com/CPAN > Or use > perl -MCPAN -e shell > to reach CPAN. Falling back to 'stty'. > If you do not want to see this warning, set PERL_READLINE_NOWARN > > in your environment. > cpan> install Term::ReadKey > Going to read /home/Kelem/.cpan/sources/authors/01mailrc.txt.gz > Going to read > /home/Kelem/.cpan/sources/modules/02packages.details.txt.gz > Scanning cache /home/Kelem/.cpan/build for sizes > Going to read /home/Kelem/.cpan/sources/modules/03modlist.data.gz > Running make for K/KJ/KJALB/TermReadKey-2.14.tar.gz > CPAN: MD5 loaded ok > Checksum for > /home/Kelem/.cpan/sources/authors/id/K/KJ/KJALB/TermReadKey-2.14.ta > r.gz ok > TermReadKey-2.14/ > TermReadKey-2.14/genchars.pl > TermReadKey-2.14/README > TermReadKey-2.14/MANIFEST > TermReadKey-2.14/test.pl > TermReadKey-2.14/ReadKey.pm > TermReadKey-2.14/Makefile.PL > TermReadKey-2.14/Configure.pm > TermReadKey-2.14/ppport.h > TermReadKey-2.14/ReadKey.xs > Removing previously used /home/Kelem/.cpan/build/TermReadKey-2.14 > > CPAN.pm: Going to build K/KJ/KJALB/TermReadKey-2.14.tar.gz > > Checking if your kit is complete... > Looks good > Writing Makefile for Term::ReadKey > mkdir blib > mkdir blib/lib > mkdir blib/lib/Term > mkdir blib/arch > mkdir blib/arch/auto > mkdir blib/arch/auto/Term > mkdir blib/arch/auto/Term/ReadKey > mkdir blib/lib/auto > mkdir blib/lib/auto/Term > mkdir blib/lib/auto/Term/ReadKey > mkdir blib/man3 > cp ReadKey.pm blib/lib/Term/ReadKey.pm > AutoSplitting blib/lib/Term/ReadKey.pm (blib/lib/auto/Term/ReadKey) > /usr/local/bin/perl -I/usr/local/lib/perl5/5.6.0 genchars.pl > > Writing termio/termios section of cchars.h... Done. > Checking for sgtty... > Sgtty NOT found. > Writing sgtty section of cchars.h... Done. > /usr/local/bin/perl -I/usr/local/lib/perl5/5.6.0/cygwin > -I/usr/local/lib/perl5/5.6.0 /usr/local/lib/perl5/5.6.0/ExtUtils/xsubpp > -typemap usr/local/lib/perl5/5.6.0/ExtUtils/typemap ReadKey.xs > > ReadKey.xsc && mv ReadKey.xsc ReadKey.c > Please specify prototyping behavior for ReadKey.xs (see perlxs manual) > gcc -c -fno-strict-aliasing -I/usr/local/include -DUSEIMPORTLIB -O > -DVERSION=\"2.14\" -DXS_VERSION=\"2.14\" > -I/usr/local/lib/perl5/5.6.0/cygwin/CORE ReadKey.c > Running Mkbootstrap for Term::ReadKey () > chmod 644 ReadKey.bs > LD_RUN_PATH="" ld2 -o blib/arch/auto/Term/ReadKey/ReadKey.dll > -L/usr/local/lib ReadKey.o > /usr/local/lib/perl5/5.6.0/cygwin/CORE/libperl5_6_0.a > dllwrap --dllname ReadKey.dll --driver-name gcc --dlltool dlltool > --export-all-symbols --as as --output-def libReadKey.def --output-lib > libReadKey.a \ > -L/usr/local/lib ReadKey.o > /usr/local/lib/perl5/5.6.0/cygwin/CORE/libperl5_6_0.a > Warning: no export definition file provided > dllwrap will create one, but may not be what you want > /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/collect-ld: Can't open base file > /tmp\cc001181.base > collect2: ld returned 1 exit status > dllwrap: gcc exited with status 1 > perlld: *** system() failed to execute > dllwrap --dllname ReadKey.dll --driver-name gcc --dlltool dlltool > --export-all-symbols --as as --output-def libReadKey.def --output-lib > libReadKey.a \ > -L/usr/local/lib ReadKey.o > /usr/local/lib/perl5/5.6.0/cygwin/CORE/libperl5_6_0.a > > make: *** [blib/arch/auto/Term/ReadKey/ReadKey.dll] Error 1 > /bin/make -- NOT OK > Running make test > Oops, make had returned bad status > Running make install > Oops, make had returned bad status -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com