I recently sent out some experimental code whose install script tries
to unpack, build, and install a (shipped) copy of YAML.pm, as:

  :
  ...
  # Install YAML, if need be.

  YDIR='YAML-0.39'

  if [ "`bin/module_chk YAML`" = '' ]; then
      echo "Installing YAML"
      (  cd supp;   tar xf $YDIR.tar
         cd $YDIR;  perl Makefile.PL;  make;  make install
         cd ..;     rm -rf $YDIR
      )
  fi
  ...


The module_chk command simply reports the first instance of a
"YAML" directory it finds in a directory in @INC:

  #!/usr/bin/env perl
  ...
  use strict;
  use warnings;

  {
      my ($inc, $module);

      $module =  $ARGV[0];

      foreach $inc (@INC) {
          if (-d "$inc/$module") {
              print "$inc/$module\n";
              exit
  }   }   }


On my machine, this prints:

  /Library/Perl/5.8.6/YAML


The installation code works fine on the local machines I tried out
here, but make(1) didn't work on some recipients' machines, as:

  make: *** No rule to make target
    `/System/Library/Perl/5.8.6/darwin-thread-multi-2level/CORE/config.h',
    needed by `Makefile'.  Stop.

Again, looking at local machines, the specified file (config.h) exists.


Help?

-r
--
email: [EMAIL PROTECTED]; phone: +1 650-873-7841
http://www.cfcl.com        - Canta Forda Computer Laboratory
http://www.cfcl.com/Meta   - The FreeBSD Browser, Meta Project, etc.

Reply via email to