http://www.perlmonks.org?node_id=484128


in reply to Re: PPM Hell: "PPM::PPD::init: not a PPD and not a file"
in thread PPM Hell: "PPM::PPD::init: not a PPD and not a file"

Thanks podmaster. I don't know if this sheds any light, but FWIW, what I got is pasted below, with LWP debug and verbose. Would you say this is reproducible enough to submit as a problem report?

I didn't think this was a DNS problem because the first several dependencies installed okay, it just choked on the last. Or am I overlooking something?

C:\thomasdata\experiments\catalyst>perl -MLWP::Debug=+ -S ppm PPM - Programmer's Package Manager version 3.1. Copyright (c) 2001 ActiveState SRL. All Rights Reserved. Entering interactive shell. Using Term::ReadLine::Stub as readline lib +rary. Type 'help' to get started. ppm> set install-verbose 1 Setting 'install-verbose' set to '1'. ppm> install http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd PPM::PPD::init: not a PPD and not a file: <HTML> <HEAD> <TITLE>IP-CONF Servermanager</TITLE> <META content="text/html; charset=iso-8859-1" http-equiv=Content-Type> <LINK href="./style.css" rel=stylesheet type=text/css> </HEAD> <BODY background="./anders.gif" bgColor=#ffffff bottomMargin=0 leftMar +gin=0 topM argin=0 MARGINHEIGHT="0" MARGINWIDTH="0"> <TABLE border=0 cellPadding=0 cellSpacing=0 height=80 width=700> <TBODY><TR><TD><IMG height=53 src="./leer.gif" ><IMG height=140 src=". +/sperr.gif " ></TD></tr></TBODY></table> <TABLE border=0 cellPadding=0 cellSpacing=0 height=20 width=700> <TBODY> <tr><TD rowspan=8>&nbsp;</td></tr> </TBODY> </TABLE> <TABLE border=0 cellPadding=0 cellSpacing=0 width=800> <TBODY> <TR> <TD valign=top width=1>&nbsp;</TD> <td valign=top width=120> <p> </p> </td> <TD width=430 valign="top"> <P align="left"> <FONT face="Arial, Helvetica, sans-serif" size=+1 color="#333333" CLAS +S="empu" > !! Fehler 404 !!<BR><BR>&nbsp;</FONT> </P> <P align="left"> <FONT face="Arial, Helvetica, sans-serif" size=-1 color="#333333" CLAS +S="stamm" >Die Aufgerufene URL ist nicht vorhanden !<BR><BR>Pr³fen Sie Ihre Eing +abe oder I hren Link.<BR><BR>&nbsp;</FONT> </P> <P align="left"><FONT face="Arial, Helvetica, sans-serif" size=-1 col +or="#33333 3" CLASS="empn" >&copy; 2005 IP-CONF Servermanager</FONT></P> </P> </TD> </TR> </TBODY> </TABLE> <P>&nbsp;</P> </BODY> </HTML>

Replies are listed 'Best First'.
Re^3: PPM Hell: "PPM::PPD::init: not a PPD and not a file"
by PodMaster (Abbot) on Aug 16, 2005 at 12:28 UTC
    No. I don't see any lines beginning with LWP::, such as
    LWP::UserAgent::new: () LWP::UserAgent::request: () LWP::UserAgent::send_request: GET http://theoryx5.uwinnipeg.ca/ppms/PA +R-WebStart.ppd
    Either you're leaving something out, or you're pasting the wrong thing.

    The error message looks like a 404 error, but http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd is clearly not 404.

    Also, it appears your locale is dutch, and the error message is in dutch, it could be that you're behind some proxy (calling itself ip conf? not the ipconf i linked), but that wouldn't explain the lack of LWP debug messages.

    You could try adding Devel::Trace to the mix, but at this point it looks like a problem on your end somewhere (near the wire or the keys :)

    MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
    I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
    ** The third rule of perl club is a statement of fact: pod is sexy.

      Thanks again podmaster.

      Well, to be honest, I don't really understand LWP::Debug, although thanks to your post this is now on my list of things to learn. What I copied in my last post was straight out of the dos window, without skipping anything.

      Also, I don't think it's a proxy issue; my location is germany.

      But, I solved this issue without lwp debug. This was possible because, like I originally thought, the problem has to do with dependencies not installing "automagically" like I would exect with ppm.

      I determined the following dependencies chain, basically by reading the ppd definitions in the various ppd urls:

      http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd requires http://theoryx5.uwinnipeg.ca/ppms/XML-SAX-ExpatXS.ppd requires http://theoryx5.uwinnipeg.ca/ppms/XML-SAX.ppd which requires <INSTALL EXEC="PPM_PERL" HREF="http://theoryx5.uwinnipeg.ca/ppms +/scripts/install_libexpat">install_libexpat</INSTALL>
      This last "INSTALL EXEC" thing basically walks the user through copying a dll file into somewhere accessible by PATH. It appears to be this step which gums up the works.

      When I did ppm install http://theoryx5.uwinnipeg.ca/ppms/XML-SAX.ppd, including copying the dll, then ppm install http://theoryx5.uwinnipeg.ca/ppms/XML-SAX-ExpatXS.ppd, then finally ppm install http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd, I was finally able to install PAR-WebStart okay.

      I then deleted the dll and uninstalled all three modules with ppm uninstall module, and reinstalled, to see if I could recreate the problem. It turns out that

      ppm install http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd

      gives the same unhelpful error as before, but

      ppm install http://theoryx5.uwinnipeg.ca/ppms/XML-SAX-ExpatXS.ppd

      installs its depdendency, the dll, and itself, with no problem. On the initial install, I *think* ppm install XML-SAX-ExpatXS failed out with the same mysterious error as PAR-WebStart, but I can't recreate this. Could it be the dll got registered somehow even though I deleted it? I wish I had a fresh computer to try this out on. Well, maybe my memory is playing tricks on me.

      In any case, I have succeeded in recreating that PAR-WebStart has trouble initiating the automatic installation of its XML-SAX-ExpatXS dependency.

      I hope this is helpful to monks that have experienced the same PPM hell problems that I have. If someone knowledgable in ppm has any further light to shed on this, or workarounds, or ways to make something that should be easy, really easy, that would be great.

      PodMaster, again I totally appreciate the handholding. Even though it appears this wasn't a dns thing, your feedback kept me going on something that has been annoying me for months.

      I guess I finally will drop randy kobes a line about this as well.

        One possible explanation for this might be connected with the list of repositories used when following dependencies. For example, using the notation of PPM::Repositories, assuming ActivePerl 8xx, an ordered repository list of

        1. theory
        2. theory58
        3. ActiveState Package Repository
        4. ActiveState PPM2 Repository
        will cause an error about "no suitable installation target found" when trying to install a package common to both the theory and theory58 repositories; for example,
           ppm> install Crypt-RSA
        
        This is because the theory repository is for ActivePerl 6xx packages, and theory58 is for ActivePerl 8xx packages; however, the ppm utility will stop at the first matching package found, and then abort if it's not for the correct platform, even though a correct platform is available further down in the repository list.

        One thing perhaps worth trying is to go through the repository list and remove any repositories that are specific to perl-5.6 (if you're using perl-5.8).