Paul Johnson July 6, 2004

Now you should find swarm-2.1.150-20040413 for RedHat 9. I built hdf5-1.6.2. You need that too.

I will probably forget how this worked, so here goes. The gcc-3.2 distributed with RH9 is full of bugs. So I built gcc-3.3.4 and installed it in an out-of-the-way place. Then I added that path to the environment temporarily, and built the RPM. Users NEED NOT change their gcc in order to use this RPM. As far as I can tell, anyway, this has worked in the past. Users will still be able to use the built-in gcc in order to build their programs.

This is the absolute last RPM for RH9. That system is officially out of product life at RedHat. If you move on to the Fedora Core linux distributions, then I have RPMs in another directory. Go up one directory from here, you should see the offerings.

I used the newest Sun J2SDK 1.4.2_04. You must install that RPM from Sun if you expect swarm-jdk-2.1.150 to work properly.

As usual, I double-refund your payment if this does not work :)


Paul Johnson Aug 12, 2003

Swarm 2.1.147 has some special zing, thanks to Bill Northcott, who retooled the library thing so now swarm comes with just 2 shared libraries, libswarm, and libjavaswarm, if you configure with the --onelib option. This version also includes a bunch of enhancements for the Mac users, but the work to port this to Macs seems to be having some overall enhancing/clarifing impacts. Bill has been explaining these in the devel list, I can't really explain it all very well.

You may know that hdf5 1.6.0 was released in July, but it caused some really bad trouble, so I was held up releasing a swarm snap for a while. Then they released a test version 1.7.0, which I gather is a transitional package, but it fixes the problems I saw in 1.6.0.

If you want to try hdf5-1.7.0, you can, because I have rpms and some swarm snaps for it. They are the release 1 of Swarm-2.1.147.

After I built those, I got some advice that hdf5-1.7.0, and in fact 1.6.0, is still not quite right, and I should be sticking with hdf5-1.4.5post2. So I reinstalled that hdf5, and built Swarm-2.1.147 against it. Those RPMS are the ones numbered with the version number 2RH9.0.

It appears the best advice is to stick with hdf5-1.4.5post2 and use Swarm-2.1.147.20030812-2RH9.0. best regards,
pj

read below for more old news __________________________________ Paul Johnson June 23, 2003

New Batch of Swarm RPMs here. Swarm-2.1.145 has many new, handy things, most important of which is Java support for MacOS users. I don't know anything about the Mac side of things, if you need help, join the swarm-hackers email list and ask in there. Also in this version there are various bug fixes and other things I've needed. If you have noticed that points and lines in ZoomRasters did not appear to maintain their relative position while zooming, you will be glad to know that problem is no more.

These require the hdf5-1.4.5post2 and j2sdk-1.4.1_03.

Remember, the "swarm" package is the required base package. "swarm-jdk" is an addon that supports usage of the Sun j2sdk-1.4.1_03. "swarm-gcj" is support for the native code java compiler in the gcc suite. "swarm-static" includes stuff you need to compile a static program, which has some speed advantages on linux systems (I never really tried that myself).

These were built with gcc-3.3, which I downloaded from RedHat's rawhide directory. It appears to me you install these RPMS and then you can build and run Swarm applications with that old bad ikky edition of gcc that RedHat is distributing with their otherwise fine distribution. I mean to say, I don't think you need to upgrade your compiler, but if big, hairy monsters come out of your screen and mess up your hair, then we will have to discuss it again :)

read below for old news.

-------------------------------------------

Paul Johnson May 12, 2003 Here are RPMS for RH9 (2.1.143).

The hdf5 "post2" version is a fixed up thing that the NCSA released.

blt and hdf5 and swarm are needed to run objective-c programs. If you want to run java against the Sun j2sdk-1.4.1_02, then get that rpm from Sun and then install swarm-jdk.

For the sake of continuity, I pasted below the readme information for RH8. I hope that not much changes as far as the rpm Swarm user is concerned. There is only the updated j2sdk and the hdf5 update issue to worry about. It is not necessary to change your gcc in order to use these rpms. There are some flaws in gcc-3.2.2 that you may find if you do try to cast objects by different types, but they are harmlesswarnings as far as I can see.

Beginning with swarm-2.1.143, the Swarm build system was simplified a little bit. No longer is the specially patched gcc needed and no longer is the METHOD_FUNCTIONS needed on the make command. Special Thanks to Marcus G Daniels. Also, the swarm objc library that used to be kn own simply as objc is now called swarmobjc.

About this new RPM that the rpm builder just started making:

swarm-debuginfo-2.1.143.20030512-1RH9.0.i386.rpm

This is an optional install that contains information that gdb can read when you are trying to debug Swarm itself. I have confirmed with the RPM team that this is not a required package in any sense. Rather, it is a collection of elements that RPM used to throw away when compiled files were stripped. So it is an enhancement. gdb should work the same as it always did for you even if you do not install this package.

The swarm-static package is needed only if you want to try to compile Swarm programs statically (with no shared libraries) or if you want to profile a Swarm program. Statically compiled programs will run slightly faster on linux systems.

----------------

Paul Johnson Oct. 21, 2002

Swarm 2.1.141 is a version update reflecting changes I have made recently. If you want the source, it is in this directory. Eventually I expect to check it in to CVS.

Get blt and jikes from the RH7.3 distribution.

Get the hdf5 rpm I built.

The gcc-3.2 that is included in RH8.0 is not capable of building Swarm.

I used gcc-3.3-20020909 to build these. THe Swarm RPMS require only 3.2, which is distributed with RH8. I have tested these RPMS on a "clean" RH8 system and they work fine along with the gcc that RH provides. I hope they will work for you with the gcc that RH distributes, but if they don't, you know the reason and in my misc software directory, I have the rpms for gcc-3.3 that I used. You could upgrade with those, but don't bother unless you see trouble. Again, I have installed these Swarm RPMS in an RH8 system with their gcc and I can compile/run Swarm programs.

Concerning Java Support

This is already frustrating me.

I downloaded the RPM from www.javasoft.com. This is a CHANGE in my way of supporting java, as in the past I was just using the Sun self extracting tarball. But now I used their rpm and rpm should not install this swarm-jdk unless you have the Sun j2sdk-1.4.1_01 installed. The RPM swarm-jdk demands that specific version. I fear this will become a pain in the ass because whenever Sun releases a new RPM I'll have to grab that, build new Swarm RPMs, and then tell everybody about it. Since Swarm does look to the exact directory structure to find what it needs, even an upgrade from 1.4.1 to 1.4.1_01 required me to rebuild Swarm.

But I promise to try to keep up the pace and keep everybody informed.

Again, I built these RPMS with a patched version of Swarm that I expect will soon be in Swarm's cvs. Essentially, the changes are:

1. Revisions to Makefiles to support the DESTDIR option in

make DESTRIR=/tmp/swarm install

The DESTDIR option is patched onto libtool's ltmain.sh in Swarm's root directory.

2. A patch to the Customize class that obligates any object that inherits it to implement +createBegin. That patch is called "Customize.patch"

3. ObjectSaver header file declaration of one method. Called that one "ObjectSaver.patch"

4. A BUNCH of small edits to deal with gcc-3.3's tighter type checking for comparisons of files. If we have

unsigned x
int y

if (x > y)

the compiler gives a warning that we are comparing an unsigned against an int. That blockis Swarm from compiling because we have -Werror causing all warnings to be treated as errors. So I had to go through the Swarm source and make about 20 changes to bring the ints and unsigneds into line. Those are in a file called "Signs2.patch" ("Signs.patch" was a first effort that fixed only signs for Obj-C Swarm, not Java Swarm, but Signs2.patch gets them all).

Name                    Last modified       Size  Description

Parent Directory 28-Aug-2008 11:51 - blt-2.4u-7.i386.rpm 11-Apr-2003 15:38 2.1M blt-2.4u-7.src.rpm 11-Apr-2003 15:38 1.8M hdf5-1.4.5post2-1RH9..> 20-Apr-2003 12:43 770k hdf5-1.4.5post2-1RH9..> 20-Apr-2003 12:43 2.9M hdf5-1.6.2-1RH9.i386..> 06-Jul-2004 13:29 888k hdf5-1.6.2-1RH9.src.rpm 06-Jul-2004 13:30 3.7M swarm-2.1.150.200404..> 07-Jul-2004 08:26 3.8M swarm-2.1.150.200404..> 07-Jul-2004 08:26 3.4M swarm-gcjswarm-2.1.1..> 07-Jul-2004 08:26 4.9M swarm-jdk-2.1.150.20..> 07-Jul-2004 08:26 2.1M swarm-static-2.1.150..> 07-Jul-2004 08:26 23k