[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Compiling on Solaris 8
From: |
Gary Polhill |
Subject: |
Re: Compiling on Solaris 8 |
Date: |
Tue, 19 Mar 2002 12:36:54 +0000 |
This problem reminds me of one that was fixed by installing GNU sed -- the
Solaris sed garbles up some of the files created during Swarm compilation. (See
http://www.santafe.edu/projects/swarm/archive/list-archive.0108/0061.html)
I have attached a document summarizing the steps I took in compiling
swarm-2001-12-18 on a Solaris 8 system. The result is not quite perfect
(there's some problem displaying the axes on EZGraphs), but it does work...
Gary
>>> Marcus G. Daniels <address@hidden> 18/03/02 15:00:07 >>>
>>>>> "GH" == gert <address@hidden> writes:
GH> included from collections.m:12: collections.xm:6: `id' redeclared
GH> as different kind of symbol
What is in collections.xm?
==================================
Swarm-Support is for discussion of the technical details of the day
to day usage of Swarm. For list administration needs (esp.
[un]subscribing), please send a message to <address@hidden>
with "help" in the body of the message.
EZGraph.png
Description: PNG image
Steps taken to compile Swarm 2001-12-18 on Solaris 8:
Summary of needed software:
- gcc-3.0.2 (with patch)
- make-3.79.1
- tcl8.2.3, tk8.2.3, and BLT2.4o
- xpm-3.4k
- zlib-1.1.3
- libpng-1.0.5
- JDK 1.3.1_01 (Comes as a package which has to be installed by systems admin.)
- hdf5-1.4.2
- emacs-20.6
- GNU sed-3.02 (Solaris sed causes compilation problems)
- GNU binutils-2.11.2 (for ld and nm)
- GNU fileutils-4.1 (for install)
- GNU gperf-2.7.2 (required during compilation of modulemap)
Compilation of needed software:
The following outlines the steps taken to compile the needed software on a sparc/Solaris 8 platform. The full ./configure options I used have not always been fully specified (e.g. --prefix) where these apply only to the particular installation I was trying to do.
GNU sed/binutils/fileutils/gperf:
- For each package: ./configure, make, make install
- Make sure your PATH picks up the bin directories of the installed package
gcc-3.0.2
- Unpack gcc-3.0.2.tar.gz into a temporary directory (say /var/tmp/gcc)
- Obtain the patch
to gcc as listed in Marcus Daniel's message
of 19 December to Swarm Support, and save it to /var/tmp/objc.diffs
- cd /var/tmp/gcc/gcc-3.0.2
- patch -p1 < /var/tmp/objc.diffs (When prompted, enter gcc/objc/objc-act.c as the file to patch.)
- ./configure --with-gnu-as --with-gnu-ld --with-as=/path/to/gnu/as --with-ld=/path/to/gnu/ld
- make bootstrap
- make install
- Add gcc-3.0.2 to your PATH.
make-3.79.1
- ./configure, make, ./make check, make install
- Add make-3.79.1 to your PATH.
tcl/tk8.2.3 and BLT2.4o
- Unpack tcl8.2.3.tar.gz, tk8.2.3.tar.gz and BLT2.4o.tar.gz into a temporary directory (say /var/tmp/tcltkblt)
- cd /var/tmp/tcltkblt/tcl8.2.3/unix
- ./configure --enable-gcc --enable-shared
- make
- make test
- make install
- cd ../../tk8.2.3/unix
- ./configure --enable-gcc --enable-shared
- make
- make test
- make install
- cd ../../blt2.4o
- ./configure --with-cc=gcc --with-gnu-ld --with-tcl=/path/to/tcl/installation --with-tk=/path/to/tk/installation
N.B. If you use --prefix to install BLT in a non-default location (e.g. your home dir), then you need to specify that directory using both --prefix and --exec-prefix)
- make
- make install
xpm-3.4k
I compiled this using Sun's C compiler in the SUNWspro package, and /usr/ccs/bin/make
- Unpack xpm-3.4k.tar.gz into a temporary directory (say /var/tmp/xpm)
- cd /var/tmp/xpm/xpm-3.4k
- xmkmf -a
- make CC=/path/to/SUNWspro/bin/cc
- make install
- make install.man
As I recall, the installation did not go entirely smoothly, and I ended up doing a manual install:
- (assuming csh) set xpm=/path/to/desired/xpm/installation
- mkdir -p $xpm/lib $xpm/include/X11 $xpm/bin $xpm/man/mann
- cp lib/libXpm.so.4.11 $xpm/lib
- (cd $xpm/lib; ln -s libXpm.so.4.11 libXpm.so)
- cp lib/xpm.h $xpm/include/X11
- cp sxpm/sxpm $xpm/bin
- cp sxpm/sxpm.man $xpm/man/mann/sxpm.n
zlib-1.1.3/png-1.0.5
- zlib: ./configure, make test, make install
N.B. If installing zlib in a non-default directory, do ./configure, make test, mkdir $prefix, make install prefix=$prefix
- Unpack libpng-1.0.5.tar.gz into a temporary directory (say /var/tmp/png)
- cd /var/tmp/png/libpng-1.0.5
- cp scripts/makefile.solaris makefile
- Edit the makefile to specify the libpng installation prefix and pick up the zlib installation (ZLIBLIB should point to /path/to/zlib/lib and ZLIBINC should point to /path/to/zlib/include)
- make test
- Create the libpng installation prefix directory, if required
- make install
hdf5-1.4.2
- This has to be compiled with the make, ar and ln in /usr/ccs/bin and the SUNWspro C compiler not the GNU equivalents. (Or at least, I was unable to compile HDF5 using the GNU utilies.)
- ./configure --enable-production --with-zlib=/path/to/zlib/include,/path/to/zlib/lib
- make, make check, make install
emacs-20.6
- Extract emacs-20.6.tar.gz and leim-20.6.tar.gz into the same temporary directory (say, /var/tmp/emacs)
- cd /var/tmp/emacs/emacs-20.6
- ./configure --with-x-toolkit=motif
- make, make install
Compilation of Swarm
Environment variable settings needed to compile Swarm:
set gcc=/path/to/gcc-3.0.2
set make=/path/to/make-3.79.1
set butl=/path/to/GNU-binutils-2.11.2
set futl=/path/to/GNU-fileutils-4.1
set sed=/path/to/GNU-sed-3.02
set gperf=/path/to/gperf-2.7.2
set blt=/path/to/blt2.4o
set hdf5=/path/to/hdf5-1.4.2
set jdk=/path/to/j2sdk1.3.1_01/j2se
set png=/path/to/libpng-1.0.5
set tcl=/path/to/tcl-8.2.3
set tk=/path/to/tk-8.2.3
set xpm=/path/to/xpm-3.4k
set zlib=/path/to/zlib-1.1.3
set emacs=/path/to/emacs-20.6
setenv EMACS $emacs/bin/emacs
setenv PATH $gcc/bin:$make/bin:$butl/bin:$futl/bin:$sed/bin:$gperf/bin:$PATH
setenv LD_LIBRARY_PATH $gcc/lib:$LD_LIBRARY_PATH
Swarm
- Unpack swarm-2001-12-18.tar.gz into the directory where you want to keep the source (say $HOME/swarm)
- cd $HOME/swarm
- mv swarm-2001-12-18 src-2001-12-18
- mkdir build-2001-12-18
- cd build-2001-12-18
- ../src-2001-12-18/configure --with-tcldir=$tcl --with-tkdir=$tk --with-bltdir=$blt --with-zlibdir=$zlib --with-pngdir=$png --with-jdkdir=$jdk --with-xpmdir=$xpm --with-hdf5dir=$hdf5 --with-gnu-ld --enable-shared --srcdir=../src-2001-12-18 --prefix=$HOME/swarm/swarm-2001-12-18
- make
- mkdir -p $HOME/swarm/swarm-2001-12-18/include (Install falls over if you don't do this -- or it did for 2001-12-18 anyway)
- make install
Java heatbugs
- Extract jheatbugs-2001-03-28.tar.gz somewhere
- setenv SWARMHOME $HOME/swarm/swarm-2001-12-18
- setenv PATH $SWARMHOME/bin:$PATH
- cd jheatbugs-2001-03-28
- make
- javaswarm StartHeatbugs
On my installation of Swarm, for some reason the numbers on the axes of the EZGraphs are not displayed properly, see below for an example. I'd be interested to hear of any other Solaris users who don't have this problem.
- Re: Compiling on Solaris 8,
Gary Polhill <=