jcs296 has asked for the wisdom of the Perl Monks concerning the following question:

I'm trying to install Net::SCP on win 2000 using ppm. I downloaded the .zip archive from activestate and unzipped it in a temporary directory. Then in the same directory typed > ppm install Net-SCP.ppd and got this error: Can't call method "ok' on an undefined value at C:/Perl/site/lib/PPM/UI.pm line 881, <$__ANONIO__> line 15. I've also tried compiling the module from CPAN, which fails for a different reason (something about multiple targets). Any suggestions are greatly appreciated, Joe

Replies are listed 'Best First'.
Re: Net::SCP ppm install fails
by ww (Archbishop) on Apr 29, 2005 at 19:20 UTC
    followup to wazoox' post, which is correct, because I do ...sigh... have a windows box here...:
    Microsoft Windows 2000 Version 5.00.2195
    (C) Copyright 1985-2000 Microsoft Corp.
    
    C:\>ppm help
    Type 'help command' for more detailed help on a command.
      Commands:
        describe   - describes packages in detail
        exit       - exits the program
        help       - prints this screen, or help on 'command'
        install    - installs packages
        profiles   - manage PPM profiles
        properties - describes installed packages in detail
        q          - exits the program
        query      - queries installed packages
        quit       - exits the program
        remove     - uninstalls packages
        repository - adds, removes, or sets repositories
        s          - searches for packages in a repository
        search     - searches for packages in a repository
        settings   - view or set PPM options
    
        targets    - views or sets target installer backends
        tree       - shows package dependency tree
        uninstall  - uninstalls packages
        unset      - view or set PPM options
        upgrade    - shows availables upgrades for installed packages
        version    - displays the PPM version (3.1)
      Extra Help Topics: (not commands)
        ppm_migration - guide for those familiar with PPM
        prompt        - how to interpret the PPM prompt
        quickstart    - a crash course in using PPM
        unicode       - notes about unicode author names
    
    Using ppm interactively for Net::SCP would go like this:
    C:\>ppm
    PPM - Programmer's Package Manager version 3.1.
    Copyright (c) 2001 ActiveState Corp. All Rights Reserved.
    ActiveState is a devision of Sophos.
    
    Entering interactive shell. Using Term::ReadLine::Stub as readline library.
    
    Type 'help' to get started.
    
    ppm> s Net::SCP
    Searching in Active Repositories
      1. Net-SCP 0.06 Perl extension for secure copy protocol
    ppm> install 1
    Package 1:
    ....
    

    had ppm found more than one module -- the beginning of whose name matched that name used in the search command --or found the module at more than one location, it would have returned additional numbered entries... any one of which could have been selected on the "install" line.... Note also that ppm is smart enough to accept the name written as name::modifier and return "Name-modifier"

      My use of ppm to install a downloaded module is an allowed method to install software! the activestate documentation discusses that if one cannot get ppm to work through a proxy, the modules can be downloaded as a zip file containing a .ppd file. This file is then installed with ppm install module-name.ppd I am using this method as I have done before; it worked on other packages (I installed Net::SSH, DBI, etc this way and they work properly). It does not work for Net::SCP only. What is the 'can't call method 'ok' on undefined value...' error? any thoughts? thanks
        The error message comes from the test scripts run during installation. For some reason the test fails; probably because the module miss a dependancy or another. If you really can't use the automated ppm install, then you'd want to check what modules Net::SCP depends upon, and install them first.
        jcs296: I'm not (and wasn't) trying to suggest your method was illegal... but neither did I have the hint that you've now provided (re proxy difficulties) as to why you needed to use the alternate, .zip file method.
        and sorry, since I haven't explored that, I'm afraid any thoughts I might have would be of very little value.
Re: Net::SCP ppm install fails
by Mr. Muskrat (Canon) on Apr 29, 2005 at 19:11 UTC
    Did you download the right zip archive? ActiveState has three versions for each OS it supports.
      I've used this method to install other modules (downloading the zip with the .ppd file) and it worked perfectly. Yes, it is the right file. any thoughts? thanks for the help.
Re: Net::SCP ppm install fails
by wazoox (Prior) on Apr 29, 2005 at 18:48 UTC
    Oh, oh, this is not the way you're supposed to use ppm this isn't the easiest way to install ppms I guess. PPM is a shell interface that automatically downloads and installs modules with their dependancies. Don't ever download the .ppm package by hand; better use the ppm command (should be something like 'inst package' but I don't have any windows machine around currently, so please check the ppm documentation).

      ActiveState provides zip files so that people can download them and install them on machines that do not have internet access. That particular usage of PPM is documented too (see perldoc ppm under the section on install).

        Alright. Anyway if the package has some dependancies, it will be probably way easier to use the usual ppm interface instead of downloading files one by one - After all he needed internet to download the file in the first place - because ppms should install seemlessly, except when they don't meet some dependancies.

        BTW I mentioned I have no windows machine (thanks Dog) so I can't test ppm directly.