Problems with DBD::Pg on Windows install

Help
Zach Frey
2005-07-07
2013-06-03
  • Zach Frey
    Zach Frey
    2005-07-07

    Hi,

    I am trying to install Codestriker 1.9.0.beta3 on a Windows XP system and am running into a problem.

    (I am using the latest Apache 1.3 and Perl 5.6 downloads.)

    The problem is with the DBD::Pg requirement.  Following the instructions, I get the following error:

    PPM> install DBD-Pg
    Install package 'DBD-Pg?' (y/N): y
    Installing package 'DBD-Pg'...
    Error installing package 'DBD-Pg': Read a PPD for 'DBD-Pg', but it is not intend
    ed for this build of Perl (MSWin32-x86-multi-thread)

    There is a DBD::PgPP package, but install.pl does not recognize it as satisifying the requirements for Codestriker.

    Any help would be greatly appreciated.

    Thanks,
    Zach Frey

     
    • David Sitsky
      David Sitsky
      2005-07-07

      This is interesting, as this is the first time I know of somebody trying to use Codestriker + PostgreSQL on a Win32 system.  I can see the problem, on Win32, the package name is completely non-standard.

      Try modifying lib/Codestriker/DB/PostgreSQL.pm on line 42, and change the string from DBD::Pg to DBD::PgPP.  Then re-run install.pl again.

      Please let me know if this fixes things.  If so, I'll fix the code so that this is what is used for Win32 systems.

       
      • Zach Frey
        Zach Frey
        2005-07-08

        That gets further, but it's not a complete fix.  Here is what I see now:

        =====================

        C:\Program Files\Apache Group\Apache\htdocs\codestriker\bin>install.pl
        Checking for  LWP::UserAgent (any)     ok: found v2.024
        Checking for             CGI (v2.56)   ok: found v2.752
        Checking for       Net::SMTP (any)     ok: found v2.26
        Checking for             DBI (v1.13)   ok: found v1.48
        Checking for        Template (v2.07)   ok: found v2.13
        Checking for  HTML::Entities (any)     ok: found v1.27
        Checking for      File::Temp (any)     ok: found v0.12
        Checking for        XML::RSS (v1.05)    found v0.97
        Checking for       DBD::PgPP (any)     ok: found v0.04
        install_driver(Pg) failed: Can't locate DBD/Pg.pm in @INC (@INC contains: ../lib
        C:/Perl/lib C:/Perl/site/lib) at (eval 30) line 3.
        Perhaps the DBD::Pg perl module hasn't been fully installed,
        or perhaps the capitalisation of 'Pg' isn't right.
        Available drivers: CSV, DBM, ExampleP, File, Mock, ODBC, PgPP, Proxy, Sponge.

        =====================

        Thanks,

        Zach

         
        • David Sitsky
          David Sitsky
          2005-07-10

          I have just got this working on my Win32 laptop with PostgreSQL and PgPP.  I used the following for my $db:

          DBI:PgPP:host=locahost;dbname=codestrikerdb

           
          • David Sitsky
            David Sitsky
            2005-07-11

            Hmmm PgPP looks buggy.  When I tried to create a topic which had the "?" character in the text, it would bomb out creating the topic.

            I really think for Win32, you are much better off with either MySQL.  There do seem to be DBD::Pg drivers for Win32, but none of them are officially supported.

            You are best to use either MySQL or SQL Server.

             
    • David Sitsky
      David Sitsky
      2005-07-10

      Ah yes - you will also need to update your $db variable in your codestriker.conf file.  For example, change from:

      $db = 'DBI:Pg:dbname=codestrikerdb';

      to

      $db = 'DBI:PgPP:dbname=codestrikerdb';

      Let me know if that fixes things.  I will test this out myself on a Win32 machine I'll have access to soon.