Skip to main content.
home | support | download

Back to List Archive

Re: Swish.cgi and Perl mods install

From: Bill Moseley <moseley(at)not-real.hank.org>
Date: Mon Apr 12 2004 - 17:05:03 GMT
[Phill, please post to the swish-e list]

On Mon, Apr 12, 2004 at 12:01:55PM -0400, Phil Matt wrote:
> On 9 Apr 2004 at 12:05, Bill Moseley wrote:
> 
> > You can't copy files from the distribution -- you need to use
> > ../configure && make && make install as per the installation
> > instructions.  @@perlmoduledir@@ will then be set correctly on the
> > installed program(s).
> 
> Thanks, Bill. I have had a look at the VPS structure. I used the built-in (by the ISP) 
> installer to install Swish-E.

I have no idea what that is.  You mean your ISP provides some automated
swish-e installer?

> I am really puzzled at how to install the Perl modules in the /examples/modules/SWISH 
> folder in the distribution. I don't want to re-install Swish-E, I just want to add the Perl 
> modules I need to run swish.cgi
> 
> I am getting into terra incognita here (for me, anyhow), but  I think I need a Makefile.pl 
> file with those modules to install them, no?

No.  You, or your ISP, is making it harder than it is.

Like I said, you just run the installation like the swish-e
instructions explain.  But it boils down to two lines:

   $ ./configure && make
   # make install

Or one line if you don't have root access:

   $ ./configure --prefix $HOME/mylocal && make install

There's a separate installation if you want to install the SWISH::API
module, but that's not what we are talking about.

There's no Makefile.PL for the helper modules that swish.cgi uses.  The
are pure Perl code and are just copied to their final location which is
*NOT* in one of the normal perl library locations.  Therefore, script
that use those modules (like swish.cgi) have to be told where to find
them.  That's where that @@perlmoduledir@@ thingy comes in -- and why
you HAVE to run ./configure and make first.  ./configure sets the
directory where the modules will be installed and make converts
swish.cgi.in to swish.cgi.

If you have swish.cgi with @@perlmoduledir@@ at the top then someone
screwed up and copied swish.cgi.in to swish.cgi without running make.

Do you have shell access on your virtual server?  If so, and your ISP
has some kind of broken installation of swish-e, then just install it
locally as in the examples above.

> As far as I can tell, the Makefile files available in the /example
> folder are Makefile.am and Makefile.in Are either of these what I
> want? Do I just load the /example and /example/.modules files to my
> server and then run the Makefile process by typing
> 
> Makefile.pl

No and No.  You shouldn't even have to look in those directories as the
installation process handles all of that.

> Looking at the contents of those Makefile files, it seems that they will find the proper 
> modules to install. I just don't want to overwrite my current installation of Swish-E itself 
> on the server by mistake.

Why not?  Seems like your installation is broken.  Might as well start
fresh.  Use a --prefix setting for testing if you like.  You can install
swish-e in more than one place and it won't be a problem.  Just try and
stick to the instructions and it should work out.  If not let me know
what is confusing in the instructions.


-- 
Bill Moseley
moseley@hank.org
Received on Mon Apr 12 10:05:07 2004