This is the command attila that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
attila - A Tool Installer
attila [ -h ] [ -S ] [ -U ] [ -F ] [ -A ]
[ --help ] [ --ssh ] [ --user ] [ --asim ]
[ --prefix=INSTALL_DIR ] [ --builddir=BUILD_DIR ]
--tool=name1 [ --tool=name2... ]
[ -c- configure_arg1 [ configure_arg2 ... ] ]
[ -m- make_arg1 [ make_arg2... ] ]
attila automates the process of compiling and installing one or more Alliance tools. The
tool can be installed either in the user's account (during the devellopment stage) or in
the Alliance system wide tree (for instance /asim/alliance) when a new version is made
avalaible to all.
attila proceed with the following steps :
1. Checks if the sources of tools are present in the user's account. If not, check
them out from the Alliance CVS tree. Note that you must have access to it.
2. In case of --asim or --full installations, attila will fork itself on one Linux
computer (currently bip) and on one Solaris computer (beny). As to connect on
thoses computer it will uses rsh so you must setup your ~/.rhosts to access them
whithout passwords. You also can uses ssh (but the procedure to allow automatic
login is more complicated).
3. Run autostuff for the tool in the ~/alliance/src directory.
4. Run configure in the build directory (see below).
5. Install the tool in the local install directory (see below) or in the system-wide
Alliance directory rooted under /asim/alliance.
After an --asim install: the build directory tree of the tool will be removed to
avoid messing with further local installations.
attila relies on the following tree structure : (all paths below are given relative to the
user's home directory)
· ~/alliance/src where the tools sources are to be found.
· ~/alliance/Linux/build/$TOOL : the top directory under which the tool will be compiled
for Linux. This is where the configure script will be run.
· ~/alliance/Linux/install : the top of the install tree when the tool is compiled locally
for Linux. Under this directory you will found (at least) : ./bin, ./lib and ./include.
· ~/alliance/Solaris/build/$TOOL : the tool's build directory for Solaris.
· ~/alliance/Solaris/install : top of the local install tree for Solaris.
If the sources of the requested tool(s) are not found under ~/alliance/src/ attila will
try to check them out. So, as says above, you must have access rights to the Alliance CVS
In addition to the tool(s) sources, it will also checks for the minimal set of files
needed for configure to run. As for now :
The root of the CVS tree will be set according to the following rules :
1. Uses the user's environment variable CVSROOT if sets.
2. Uses the attila default value sets in attila.conf (variable ATTILA_CVSROOT).
The root of the Alliance installed distribution tree will be set according to the
following rules :
1. Uses the user's environment variable ALLIANCE_TOP if sets.
2. Uses the attila default value sets in attila itself (variable ATTILA_ALLIANCE_TOP).
ALLIANCE_TOP: is set in attila itself because its value is a prerequisite to load
the configuration file attila.conf which is in the directory $ALLIANCE_TOP/etc/.
attila accepts the followings arguments :
· -h, --help : print help.
· -S, --ssh : uses ssh instead of rsh to connect to the remote computers (in case of
--asim or --full).
· -U, --user : perform a local installation.
· -F, --full : install for all avalaibles architectures (currently Linux and Solaris).
· -A, --asim : install in the system-wide directory (/asim/alliance).
· --prefix=INSTALL_DIR : override the default installation directory.
· --builddir=BUILD_DIR : override the default building directory.
· --tool=name1 : name of the tool to be installed.
· -c- configure_arg1 : all arguments following -c- (until a -m- is encountered) are passed
as is to the subsequent call to configure. For example, if you want to first use your
local libraries, give --enable-devel. If you want to link or install dynamic libraries,
give --enable-alc-shared for alliance libraries and give --enable-shared for other
· -m- make_arg1 : all arguments following -m- are passed as is to the subsequent call to
make. If no -m- argument is given, then install is assumed. If you want to completly
uninstall a tool and clean it's build directory you can pass uninstall clean
CONFIGURATION FILE ATTILA.CONF
The configuration file is located in $ALLIANCE_TOP/etc. This file is to be read by the sh
shell. It sets up the following variables :
· LINUX_TARGET : the computer where to compile for the Linux architecture (default bip).
· LINUX_CC : the name or full path to to the C compiler for Linux system (default gcc3).
· LINUX_CXX : the name or full path to to the C++ compiler for Linux system (default
· SOLARIS_TARGET : the computer where to compile for the Solaris architecture (default
· SOLARIS_CC : the name or full path to to the C compiler for Solaris system (default
· SOLARIS_CXX : the name or full path to to the C++ compiler for Solaris system (default
· ATTILA_CVSROOT : the root of the Alliance CVS tree (default
· CVS_STARTUP_FILES : the minimal set of files needed to run configure.
Compile & install nero tool on the local computer (must be either a Linux or a Solaris
$ attila --tool=nero
Compile & install nero tool for all architectures (currently only Linux and Solaris are
$ attila --full --tool=nero
Compile & install nero tool in the system-wide directory (a new version for everyone to
$ attila --asim --tool=nero
Compile & install mbk then genlib (the order is significant) in a row for a local install
on the current computer :
$ attila --tool=mbk --tool=genlib
Compile nero tool and link it against the locally installed libraries (if any).
$ attila --tool=nero -c- --enable-devel
Remove poire tool from the system-wide tree. (poire is the old name of nero).
$ attila --asim --tool=poire -m- uninstall
Use attila online using onworks.net services