swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Swarm-Support] Installing under Gentoo Linux


From: Bill Northcott
Subject: Re: [Swarm-Support] Installing under Gentoo Linux
Date: Thu, 15 Apr 2004 18:08:03 +1000

I don't use Swarm on Linux, but I do package up binaries for MacOS X.

I would like to respond to the remarks below. We are conscious of the deficiencies in the Swarm documentation which tend to lead people up many blind alleys. We are trying to build a new and more helpful web site at http://wiki.swarm.org. However, Swarm no longer has any official funding. So everything has to be done by volunteers. We all have a living to earn and usually research to get done. If anyone is able to help with coding, testing, debugging, documentation or the website please let us know.

I write the following in the hope that it explains why Carlos had the problems he did and will help others to avoid them.

On 15/04/2004, at 3:12 PM, Carlos Castillo wrote:
I've been trying to install Swarm (cvs) under Gentoo Linux for a couple of days now, and I have more or less succeeded, however I'm having problems getting an application to work. Some developers and/or users might find this
information useful.

Here's what I have done and the issues I've had to deal with:

-Installed the required software (blt2, libpng, xpm, hdf5, zlib, libffi, kaffe, etc). Verified the software worked correctly. Note that there is not a list of packages needed for the development version available at the web
page, I used the list of software available at the stable version page.

The business of required packages is non-trivial particularly on Linux. All Linux distributions are different and installers have many options about what is and is not included. Hence it is very hard to provide a definitive list of what is needed on Linux. On MacOS X, for instance, it is much easier because the system is more standard.

For guidance
Required:
gcc at least version 3.0.x for preference 3.3.x or even 3.4 when it is released. Avoid 3.2.x on most systems.
Tcl, Tk xpm and BLT are required for the graphical display.
zlib is required but already included on most modern systems.
Some foreign function library (ffcall or libffi) is required. However, a version of avcall which is part of a ffcall is now included in the sources, and will be used if nothing else is specified to configure. Libffi is now part of gcc and will not need to be separately installed with a recent version of gcc. It is likely that we will move to using libffi exclusively in the future because it should be better supported as part of gcc.

Optional packages:
If you want to use the Java API you need to have either some version of the Sun JDK or the opensource Kaffe, but not both.

If you want to use png graphics, you need libpng.

If you wish to use HDF5 archiving, you need libhdf5. Without it, Lisp archiving will be used.

-Checked out the cvs version after trying the latest stable and failing
miserably to install it on a reasonably current Linux system.

-./autogen.sh, generates some syntax errors in the configure script, I just
deleted the problem areas and all went well

The 'latest stable' or version 2.1.1 will NOT build on any modern system.

The CVS checkout is only intended for those with a good understanding of the GNU autoconf/automake/libtool suite. Autogen.sh is just a simple driver script for them. It is expected that it has to be modified for particular systems.

Can you please explain what you mean by 'syntax errors in the configure script'? A configure script runs very many small test programs. Some of these test programs will give syntax errors. That is normal.

All autogen.sh does is invoke the GNU autotools. Errors in a configure script are either caused by problems in the autoconf/automake installation on your system or incompatabilities between it and the code in Swarm. The GNU autotools are frequently updated which is why the CVS code is not suitable for most users

Paul Johnson makes recent source code packages, which do not require autoconf and friends, available on his site:
http://lark.cc.ku.edu/~pauljohn/Swarm
You can also find there an excellent FAQ.  His latest source tarball:
http://lark.cc.ku.edu/~pauljohn/Swarm/Swarm-2.2X_Fdr1/swarm -2.1.150.20040413.tar.gz
Is from the cvs just two days ago.

Using these will avoid all the issues with autotools. There are also binary rpms there for Linux and links to binaries for Windows and MacOS X.


-./configure had problems working with kaffe (which I later came to know
was no longer required, but it wasn't mentioned explicitly anywhere), I
switched to sun-jdk and all went better.

-make initially failed in the tools directory, where I had to compile a
couple of source files manually because of missing headers, it couldn't
find some required headers. Unless up to this point I have done something wrong, everyone compiling the development version should be running into
this problem.

A number of header files and other sources are built by the configure script. If you have modified the configure script that would explain why they do not build. Some other sources such as those for Java and COM are built by LISP programs invoked by the makefiles when appropriately configured. Without those headers and auxiliary files, you cannot build working code. So I will ignore most subsequent problems.

If you think you have trouble with a configure script, please report it here. So we can fix the code that produced the script. Do not try to modify the scripts yourself. They are too complex and you will just waste your time.

install, but I don't think so. Tweaked the makefile. It compiled but
it didn't run. I had to go to the directory where blt was installed and to a symlink from bltGraph.tcl to graph.tcl (I'm using the latest stable of BLT).

This is a pain. The name of the file was changed in BLT but not documented. If someone can tell us the BLT version at which the change was made, we can fix it in configure. If we fix it unconditionally it will break on older versions of BLT :-(


under linux, does the COM directory have to be built?

COM is only meaningful on Windows. So it does not build on other platforms.


Hope this helps.
Bill Northcott



reply via email to

[Prev in Thread] Current Thread [Next in Thread]