This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems installing Perl packages in Cygwin AND Problems with Activestate perl in Cygwin


Replies inline below.

On Wed, 7 May 2003, Charles Plager wrote:

> I am running a (fairly) current cygwin install (Installed last month).
> I am trying to either:
> 1) install LWP and Tk (or any other Perl packages) on Cygwins perl
> OR
> 2) Get activestate Perl (where I have said packages installed already)
> to understand how to parce cygwin path names.
> Specifically:
> 1)  I'm trying to install packages by:
> unix> perl -MCPAN -e shell
> cpan> install LWP
> (lots of stuff goes by)
> Couldn't rename libwww-perl-5.69 to f:/Users/cplager/.cpan/build/libwww-perl-5.69: Permission denied at /usr/lib/perl5/5.8.0/ line 3907
>          CPAN::Distribution::get('CPAN::Distribution=HASH(0x10d4e8d0)') called at /usr/lib/perl5/5.8.0/ line 4421
>          CPAN::Distribution::make('CPAN::Distribution=HASH(0x10d4e8d0)') called at /usr/lib/perl5/5.8.0/ line 4660
>          CPAN::Distribution::test('CPAN::Distribution=HASH(0x10d4e8d0)') called at /usr/lib/perl5/5.8.0/ line 4765
>          CPAN::Distribution::install('CPAN::Distribution=HASH(0x10d4e8d0)') called at /usr/lib/perl5/5.8.0/ line 5454
>          CPAN::Module::rematein('CPAN::Module=HASH(0x112763b8)','install') called at /usr/lib/perl5/5.8.0/ line 5511
>          CPAN::Module::install('CPAN::Module=HASH(0x112763b8)') called at /usr/lib/perl5/5.8.0/ line 2114
>          CPAN::Shell::rematein('CPAN::Shell','install','LWP') called at /usr/lib/perl5/5.8.0/ line 2141
>          CPAN::Shell::install('CPAN::Shell','LWP') called at /usr/lib/perl5/5.8.0/ line 200
>          eval {...} called at /usr/lib/perl5/5.8.0/ line 200
>          CPAN::shell() called at -e line 1

Why is it trying to access a Win32 path?  Perhaps your $HOME is set

> cpan> install Tk
> (lots of stuff goes by)
> PORTLIB -O2 -DVERSION=\"800.024\" -DXS_VERSION=\"800.024\" "-I/usr/lib/perl5/5.8.0/cygwin-multi-64int/CORE" -D__WIN32__ -Wall -Wno-implicit-int -Wno-comment -Wno-unused -D__USE_FIXED_PROTOTYPES__ ClientWin.c
> ClientWin.c:30:22: X11/Xlib.h: No such file or directory
> ClientWin.c:31:23: X11/Xatom.h: No such file or directory
> [long list of errors snipped]
> make: *** [pTk/libpTk.a] Error 2
>    /usr/bin/make  -- NOT OK
> Running make test
>    Can't test without successful make
> Running make install
>    make had returned bad status, install seems impossible
> cpan>

Don't know much about that.  WAG: Could you be missing the X headers and
libraries?  Try installing the XFree86-prog and XFree86-lib packages.

> 2) The problem is when I've got an Activestate Perl script in
> /home/cplager/scripts.  For example
> unix> cd /home/cplager/scripts
> unix> ./script
> Can't open perl script "/home/cplager/scripts/script": No such file or
> directory
> where the header of the file is :
> #!/Perl/bin/perl
> cplager@pointyjr> mount
> c:\Perl on /Perl type user (textmode)
> If I could fix either of these problems I'd be quite happy.
>         Charles Plager

Hmm, you can't teach ActiveState perl to understand Cygwin mounts.  You
can, however, write a wrapper script[*], e.g.:

========= /usr/local/bin/wrap_w32 =========
fname="`cygpath -w "$2"`"
shift 2 && exec "$pname" "$fname" "$@"

and make the shebang line of your perl script

#!/usr/local/bin/wrap /Perl/bin/perl

You can test that you're running the right perl by the following:

use English;
print "Testing: $PERL_VERSION on $OSNAME\n";

Hope this helps,
[*] This wrapper script will not work if you want to pass any flags to
perl.  You can make it work (for "-?"-style flags) with a bit of hacking.
However, I don't think there's a way to make it work for programs that
have "/?"-style flags.
      |\      _,,,---,,_
ZZZzz /,`.-'`'    -.  ;-;;,_
     |,4-  ) )-,_. ,\ (  `'-'		Igor Pechtchanski
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

Knowledge is an unending adventure at the edge of uncertainty.
  -- Leto II

Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]