# Alliance VLSI CAD System
# Copyright (C) 1990, 2002 ASIM/LIP6/UPMC
#
# Home page : http://asim.lip6.fr/recherche/alliance/
# E-mail : mailto:alliance-users@asim.lip6.fr
# ftp site : ftp://asim.lip6.fr/pub/alliance/
#
# NOTE: You can find the latest revision of this document at:
# http://asim.lip6.fr/pub/alliance/latest-checkout/alliance/src
#
# $Id: README,v 1.9 2004/07/26 14:50:22 fred Exp $
This file discuss about installation of Alliance on UNIX machines.
# Downloading and installing binary distribution :
# ===================================================================
If you don't find the exact precompiled package for your system, or if you
have trouble with a package, please consider downloading the sources
and build them.
Note that for running some precompiled Alliance binaries you will need gcc and
other gnu tools (gmake, gcc ...), X11R6.4 libraries (http://www.x.org/), Motif
1.2 libraries. You can find a semi free Motif distribution at
http://www.motifzone.net/ and a free clone at http://www.lesstif.org/.
If you use Linux RedHat 7.1 you'll find 2 openmotif rpm in
ftp://asim.lip6.fr/pub/alliance/distribution/5.0/redist/rh7.1/
If you use RedHat 7.3 or 8.0, install the 3 openmotif rpm found on the
RedHat cdroms (especially the openmotif21 rpm which is a compatibility library
for Open Motif 2.1 that can be installed with the openmotif-2.2.
Alliance naming scheme:
=======================
- sources: alliance-XXX-YYY.tar.gz
where:
XXX = Alliance version number. eg 5.0
YYY = Alliance release number, wich is the date of the build. eg 20020624
- binaries: alliance-XXX-YYY-ZZZ.KKK
where:
XXX, YYY = same as above.
ZZZ = indicate the platform target
KKK = archive type (gzipped tar or rpm)
To install a tar.gz package (*nix)
----------------------------------
Get the latest binary package for your platform,
log as root then type :
> cd /usr/local
> tar -xzf /mnt/cdrom/alliance-5.0-XXX-YYY.tar.gz
> ln -s /usr/local/alliance/etc/alc_env.csh /etc/profile.d/
> ln -s /usr/local/alliance/etc/alc_env.sh /etc/profile.d/
To install a .rpm package (Linux redHat 7+)
-------------------------------------------
This rpm has been build on a modified RedHat 7.1 and requires: ld-linux.so.2
libICE.so.6 libSM.so.6 libX11.so.6 libXext.so.6 libXm.so.2 libXp.so.6
libXpm.so.4 libXt.so.6 libc.so.6 libm.so.6 libstdc++-libc6.2-2.so.3 /bin/sh
libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.1.3)
libm.so.6(GLIBC_2.0).
You can get the latest rpm package available on alliance site,
Rpm named *.rpm are build on a modified RedHat 7.2 we use at lip6.
Rpm named *-rh8.rpm are build on a up2date full install of RedHat 8o
log as root then type :
> rpm -Uvh alliance-5.0-YYY.rpm
To build a .rpm package for your platform
-------------------------------------------
You can generate the rpm for your platform (czo is my login name) :
# change the default rpm path for non root build
echo "%_topdir /var/tmp/czo/rpm" > $HOME/.rpmmacros
# create these dirs...
mkdir -p /var/tmp/czo/rpm ;\
cd /var/tmp/czo/rpm ;\
mkdir BUILD RPMS SOURCES SPECS SRPMS
then cd where you have downloaded alliance and type
1- if you are using rpm version < 4.1
rpm -ta alliance-5.0-XXX.tar.gz
2- if you are using rpm version > 4.1
rpmbuild -ta alliance-5.0-XXX.tar.gz
# Building from the sources :
# ===================================================================
Alliance's sources are now conforming to GNU's automake/autoconf.
1/ Get the latest alliance-5.0-YYY.tar.gz archive.
2/ Unarchive it
> tar xzf alliance-5.0-XXX.tar.gz
3/ The install stage has to be done at the same time
as the make itself : the way the configure and Makefiles
are written implies that you do a "make install" in one
step rather than a "make" followed by a "make install"
To avoid make problems, please use gnu make (gmake)
The following commands builds the full package from scratch.
> export ALLIANCE_TOP=/usr/local/alliance
> ./configure --prefix=$ALLIANCE_TOP
> gmake install
All this is done by a script called ./build in the alliance directory.
# Building from the cvs tree :
# ===================================================================
This explains how to proceed from the Alliance CVS tree.
1/ Get the latest alliance release on the ASIM CVS server.
To checkout the Alliance CVS tree, you have to first login
onto the cvs server using the following command:
> cvs -d :pserver:anoncvs@asim.lip6.fr:/cvsroot login
At the CVS password prompt answer:
> anoncvs
This has to be done only once. Then to actually retrieve the latest
version of the sources, issue the command:
> cvs -d :pserver:anoncvs@asim.lip6.fr:/cvsroot co alliance
To update your files once on a while (usually when we have done minor
bug corrections, that you can be aware of by reading the alliance-users
mailing list once on a while), cd into your alliance top directory
and type :
> cvs update -d -P
2/ Remove some directories from the Alliance tree. These directories
contain tools that may be helpfull but are not maintained anymore,
so they will likely not compile.
Assuming Alliance sources reside in "~fred/alliance", do:
> cd src
> source .asim
3/ We recommand not to build the tool in the source directory.
Also, the install stage has to be done at the same time
as the make itself : the way the configure and Makefiles
are written implies that you do a "make install" in one
step rather than a "make" followed by a "make install"
To avoid make problems, please use gnu make (gmake)
Assuming user "fred" did the cvs checkout in "~fred/alliance", the
following commands builds the full package from scratch in the
'/opt/alliance/objects' and installs it in '/opt/alliance'.
> su root
> mkdir /opt/alliance
> chown fred /opt/alliance
> logout
> cd /opt/alliance
> mkdir objects
> cd objects
> export ALLIANCE_TOP=/opt/alliance
> ~fred/alliance/src/configure --prefix=$ALLIANCE_TOP
> gmake install
# Usage :
# ===================================================================
Each user has to source alc_env.[c]sh to set Alliance environment
variables to be able to run the Alliance tools.
in sh > . [where you have installed Alliance]/alliance/etc/alc_env.sh
in csh > source [where you have installed Alliance]/alliance/etc/alc_env.csh
This sets various default environment variables which could be changed by user
later (Like MBK_OUT_LO to set the netlist output file format).
If you are a SysAdmin, you should consider linking these scripts in
the system's profile (e.g.: /etc/profile.d/ on Linux) so that configuration
would be done at user login.
# EOF