[greenstone-users] compiling Greenstone on FreeBSD

From Robert Carlitz
DateMon, 16 Oct 2006 10:58:56 -0400
Subject [greenstone-users] compiling Greenstone on FreeBSD
In-Reply-To (AAC978B2-B749-43DD-9164-FCEA5100C375-info-ren-org)
I have compiled and set up Greenstone on a FreeBSD 5.2 system. I
found a few little problems in configure, and I have a few questions
about other things I ran into.

Here are the problems:

1. I had to install gdbm and iconv from the FreeBSD ports collection.
2. I had to copy src/Unix/* to src to be able to run configure.
3. I got a syntax error in src/packages/wv/wv-gs/libole2/ms-ole.h.
This was fixed by replacing ssize_t on lines 73 and 76 with int. (The
FreeBSD ports version of libole2 has an int here.)
4. After running configure I had to add -I/usr/local/include to
INCLUDES in src/packages/unac/Makefile to be able to find /usr/local/
include/iconv.h.
5. Similarly, I had to add /usr/local/lib/libiconv.a to LIBS in the
Makefiles for src/src/mgpp/text, src/src/recpt and src/src/oaiservr.
6. I had to use gmake, not the system make.
7. After running gmake, I had to replace ../../cgi-bin/ with ../../../
gsdl/cgi-bin/ in the Makefiles for src/src/recpt and src/src/oaiservr.

I was a little confused how to build collections on a remote machine.
After installing the binaries on a Mac, I saw how gli.sh works and
realized that I could use client-gli.sh to access a remote Greenstone
server.

But before I did that, I tried running gli.sh on my FreeBSD machine,
having logged in from a terminal window on the Mac. gli.sh complained
that it didn't have DISPLAY defined, so I thought it wanted to open
an X window on the Mac. Therefore I started up X11 on the Mac,
logged in to the FreeBSD machine with sh -X and tried running
gli.sh. Interestingly, it almost worked. X windows opened on the
Mac, but they only displayed portions of the intended text.

I presume that the Java libraries used in the GLI have some code for
running under X, but that the GLI systematically attempt to exploit
this capability. Am I right to assume that you did not regard the
performance of X as adequate for your purposes? For a slow
connection this would certainly be a problem, but how about with a
fast connection? Or is the X support in the Java libraries you are
using simply inadequate for the task?

I'm more curious about this than interested in using Greenstone this
way, but I did get confused when I saw things almost working and did
not understand the architecture you had chosen. It might be a good
idea to turn off the X support in the Java libraries if you don't
want people to use it at all. Or, if it isn't a lot of work to get
the X code to work properly, it would be nice to make it available
generally. It certainly would be nice to let people build
collections on a remote server without having to install anything on
their local machines.

Thanks for the great work you've done!!

Best Regards,
Bob Carlitz