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

<sigh> I have spent HOURS trying to get this stupid thing to load. </sigh>

Details: I'm on Windows 2000, using ActiveState 5.8. I used ppm3 to automagically install the DBI module. However, when I try to load DBD::Sybase, ppm3 can't find it via "search." So, mpeppler's webpage pointed to crazyinsomniac's ppm store. I downloaded crazy's 5.8 version of DBD::Sybase (tar.gz file), and had Winzip expand it into c:\temp\DBD. I pulled up tachyon's lovely A Guide to Installing Modules, installed nmake, and made it up it until the point it instructed me to do the following:

$perl Makefile.PL

I did check the extracted tar.gz files in my c:\temp\DBD directories for the Makefile.PL file, but couldn't find one. I searched my entire hard drive and found two of them. However, after opening them in Notepad, I could see that each Makefile.PL is unique.

Earlier today, I also tried to download CPAN.pm (repeatedly) so it could help me install some modules, and got so many errors about files being "bad" that I gave that up and started searching other options.

So, any ideas for this pathetic, soon-to-be-brain-dead newbie?

  • Comment on DBD::Sybase - I'm having trouble installing it

Replies are listed 'Best First'.
Re: DBD::Sybase - I'm having trouble installing it
by PodMaster (Abbot) on Sep 23, 2003 at 22:23 UTC
    crazyinsomniac runs a PPM repository. PPM repositories contain PPM Packages. Source distributions are typically found on CPAN (they typically include INSTALL/README files, along with a Makefile.PL or something appropriate). I suggest you give that tutorial another read.

    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.

Re: DBD::Sybase - I'm having trouble installing it
by Limbic~Region (Chancellor) on Sep 24, 2003 at 20:27 UTC
    Lori713,
    Maybe this will help
    C:\Perl\scripts>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> rep Repositories: [1] ActiveState PPM2 Repository [2] ActiveState Package Repository ppm> rep add crazy http://crazyinsomniac.perlmonk.org/perl/ppm/5.8/ Repositories: [1] ActiveState PPM2 Repository [2] ActiveState Package Repository [3] crazy ppm> install DBD::Sybase ==================== Install 'DBD-Sybase' version 1.00 in ActivePerl 5.8.0.806. ====================
    If you can't get that to work, let me know and I will provide instructions on how to use WinZip and do:
  • perl Makefile.PL
  • make
  • make test
  • make install

    The only thing is you have to use nmake instead of make, which is explained quite well in this tutorial

    Cheers - L~R

      YOU ARE WONDERFUL!   Below are my results:

      C:\>ppm3 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> rep Repositories: [1] ActiveState PPM2 Repository [2] ActiveState Package Repository ppm> rep add crazy http://crazyinsomniac.perlmonk.org/perl/ppm/5.8/ Repositories: [1] ActiveState PPM2 Repository [2] ActiveState Package Repository [3] crazy ppm> rep Repositories: [1] ActiveState PPM2 Repository [2] ActiveState Package Repository [3] crazy ppm> install DBD::Sybase ==================== Install 'DBD-Sybase' version 1.00 in ActivePerl 5.8.0.806. ==================== Downloaded 62711 bytes. Extracting 22/22: blib/man3/.exists Installing C:\Perl\site\lib\auto\DBD\Sybase\Sybase.bs Installing C:\Perl\site\lib\auto\DBD\Sybase\Sybase.dll Installing C:\Perl\site\lib\auto\DBD\Sybase\Sybase.exp Installing C:\Perl\site\lib\auto\DBD\Sybase\Sybase.lib Installing C:\Perl\site\lib\DBD\dbd-sybase.pod Installing C:\Perl\site\lib\DBD\Sybase.pm ***WARNING*****WARNING*****WARNING*****WARNING** In addition to installing DBD-Sybase you will need to download and install Adaptive Server Enterprise version 12.5 for NT. Developer's Edition U.S. Download (Client) http://download.sybase.com/eval/ASE_dev_win/NTclient.exe Be careful as it is big. Also, since I do not have access to a Sybasedb, this package hasn't been tested. The following links may be of interest: http://perlmonks.com/index.pl?node_id=247864 http://www.sybase.com/ase_125devel http://www.sybase.com/detail?id=1020071 http://www.sybase.com/detail?id=1020069 Successfully installed DBD-Sybase version 1.00 in ActivePerl 5.8.0.806 +. ppm>

      I ran it through Komodo, and it's quite happily recognizing this module.  YAY!

      So, next question... I'm assuming the WARNING up there is from crazyinsomniac, and I do need to download those files. Yes?

      THANKS!    Lori   -D

        So, next question... I'm assuming the WARNING up there is from crazyinsomniac, and I do need to download those files. Yes?
        That's right. It comes from this. If you want to be able to use DBD::Sybase, you need those files (crazyinsomniac can't distribute those).

        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.

Re: DBD::Sybase - I'm having trouble installing it
by Roger (Parson) on Sep 23, 2003 at 23:33 UTC
    What you need to do is -

    Step 1 Download the DBD-Sybase-1.00.tar.gz compiled binary from crazyinsomniac's ppm store at here
    Step 2 Open the archive (with Winzip), and then drop the files Sybase.pm, dbd-sybase.pod and damn.pl into {C:\Perl}\lib\DBD. You have to create this directory manually if it does not exist.
    Step 3 Drop the files Sybase.lib, Sybase.exp, Sybase.dll and Sybase.bs into {C:\Perl}\lib\auto\DBD\Sybase directory. Again you have to create this directory manually (most likely it won't exist).

    Where {C:\Perl} should be replaced by the appropriate ActivePerl installation directory on your machine. If you follow these three steps, you should have successfully installed the Sybase DBD.
        You are perfectly correct in telling me to RTFM... and I honestly have. I'd expect to be flayed alive if I hadn't at least tried to search for an answer!   ;-)    I thought I had outlined my steps above sufficiently to indicate that I have made a very dedicated effort to resolve it on my own but your response makes me think I didn't do a good job of that.

        I've tried the steps in the links you provided over and over. And, unfortunately for me, I'm not able to figure out what I'm doing wrong. The links you suggested are the same ones I have been trying (plus some other's, like crazy's 5.8 ppm page). Perhaps I'm trying them in the wrong order... Maybe I don't understand the way something is written. I don't know.   :-(

        If it would make everyone feel comfortable that I've struggled long enough and hard enough, I can provide the gory details of every step I've taken, with cut-and-paste results.

        I will continue to google it to death and see if I can extrapolate advice from others and apply it to my situation. Thanks for your feedback.

      Thanks for the suggestion. I tried it, but, alas, it still doesn't work. My script will come to a screeching halt when it runs into the "use DBD::Sybase;" line, saying

      Can't locate loadable object for module DBD::Sybase in @INC (@INC contains: C:\Program Files\ActiveState Komodo 2.5 C:/Perl/lib C:/Perl/site/lib .) at K:\Lori-Kdrive\Perl\example1-hello.pl line 3

      :-(

Re: DBD::Sybase - I'm having trouble installing it
by mpeppler (Vicar) on Sep 23, 2003 at 23:25 UTC
    I know next to nothing about ActiveState, or about Win32 boxes, but I think you need to use the PPM utility to install a package maintained by crazyinsomniac. There's probably some way to tell ppm to fetch packages from an alternate repository, no?

    Michael

Re: DBD::Sybase - I'm having trouble installing it
by jonadab (Parson) on Sep 23, 2003 at 23:05 UTC

    I don't know anything about Sybase in particular, so I won't try to talk about that aspect of your problem. update: but see below However, in general...

    If you want to be able to easily install things off of CPAN, you may be happier with cygwin instead of, or in addition to, ActiveState's Perl distribution. ActiveState mostly just gives you Perl, with some Win32-specific extra parts. This is useful, and it's what a lot of people want, and it integrates well with Windows, but CPAN tends to like a little bit more in the way of a unix-oriented environment. cygwin OTOH is not just Perl, but an entire POSIX-style environment. As such, it includes things like gcc, make, wget, and so on and so forth, and as a result CPAN.pm will feel more at home.

    update: Having wandered over to search.cpan.org and had a brief look at DBD::Sybase, it looks sortof as though possibly it might potentially be pure Perl; if that is the case, you can install just by tossing the Sybase.pm file in a directory called DBD within the correct directory (i.e., in @INC someplace). But I could be jumping to confusions.


    $;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$ ;->();print$/
      I tried your suggestion. I put the Sybase.pm file in the DBD directory. But, my script still couldn't find it. There was also a Sybase subdirectory underneath that, and I tried copying the Sybase.pm file in there too, just to see if that would work... but nope... I'll keep digging. Thanks!

        Well, like I said, I don't really know that much about the Sybase module. I haven't, like, you know, actually used it or anything, personally. I was basically guessing, from a quick glance-over, that it might have been pure Perl. It may also be that it isn't, in which case just copying won't work.


        $;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$ ;->();print$/