171 lines
6.7 KiB
Plaintext
171 lines
6.7 KiB
Plaintext
How to Install using autoconf'ed TORQUE.
|
|
|
|
ONLINE:http://www.clusterresources.com/products/torque/docs_20050804/torquequickstart.shtml
|
|
|
|
|
|
- untar the tar file and cd to the top level directory
|
|
|
|
- run "./configure" with the options set appropriately for your
|
|
installation. (See 'CONFIGURE' note below)
|
|
|
|
- run "make" (See 'BUILD' note below)
|
|
|
|
- run "make install" or "make packages" (See 'INSTALL' note below)
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
CONFIGURE: It is advisable to create a simple shell script
|
|
that calls configure with the appropriate options so that you
|
|
can save typing on reconfigures. If you have already run configure
|
|
you can remake all of the Makefiles by running "./config.status".
|
|
Also, looking at the first few lines of config.status will
|
|
tell you the options that were set when configure was run.
|
|
To figure out which options one can set run "./configure --help"
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
BUILD: You need to use a POSIX (or nearly POSIX) make. GNU make
|
|
works quite well in this regard; BSD make does not. If you are
|
|
having any sort of build problems, your make should be a prime suspect.
|
|
Tremendous effort has been expended to provide proper dependency
|
|
generation and makefiles without relying on any non-POSIX features.
|
|
The build should work fine with a simple call to make, however,
|
|
complicating things by using various make flags is not guaranteed
|
|
to work. Don't be surprised if the first thing that make does is
|
|
call configure again. See the note in Makefile.in if this happens.
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
INSTALL: The standard "install" target will install all of the
|
|
configured components. Individual components can be installed with
|
|
the following targets: install_clients, install_mom, install_server,
|
|
install_gui, and install_devel. If your TORQUE build directory is
|
|
shared to your nodes, you can rsh/ssh to each node and run:
|
|
"make install_mom install_clients".
|
|
|
|
TORQUE has built-in support for making RPMs. After running
|
|
./configure with all desired options, 'make rpm' should create a
|
|
set of binary RPMs that match your configuration.
|
|
|
|
For more convienent installation on compute nodes and login machines,
|
|
TORQUE can build customized, distributable, self-extracting packages
|
|
with the "packages" target. The packages contain all required files
|
|
to use a specific subcomponent on any host with the same Operating
|
|
System.
|
|
|
|
The generated packages can be copied to all other hosts and installed
|
|
by running the script with --install. By default, packages will
|
|
preserve config files (See buildutils/self-extract-head-sh.in for the
|
|
current list of config files. Run the package with --help for other
|
|
options.
|
|
|
|
|
|
Environments that use multiple builds can add a useful package name
|
|
by defining PKGNAME, ie:
|
|
$ make PKGNAME=cluster1 packages
|
|
...
|
|
Building torque-cluster1-clients-linux-i686.sh ...
|
|
Building torque-cluster1-mom-linux-i686.sh ...
|
|
...
|
|
|
|
|
|
Local changes, such as MOM config files and pro/epilog scripts, can
|
|
be placed in a "package override" directory. Files in this directory
|
|
will be added, possibly overwriting default files, to the generated
|
|
packages. Override files are scanned from PKGOVERRIDE/$component
|
|
where PKGOVERRIDE defaults to "./pkgoverride" and $component is one
|
|
of: clients, mom, server, gui, and devel. Override files are copied
|
|
with the full path, ie:
|
|
./pkgoverride/mom/usr/spool/PBS/mom_priv/config
|
|
|
|
One might maintain MOM scripts in a permanent location like
|
|
~/pkgoverride/mom and build packages with:
|
|
$ make PKGOVERRIDE=~/pkgoverride packages
|
|
...
|
|
Building torque-package-mom-linux-i686.sh ...
|
|
Using override dir ~/pkgoverride/mom
|
|
...
|
|
./usr/spool/PBS/mom_priv/config
|
|
./usr/spool/PBS/mom_priv/prologue
|
|
Building torque-package-server-linux-i686.sh ...
|
|
Building torque-package-gui-linux-i686.sh ...
|
|
...
|
|
|
|
|
|
If an executable is found at PKGOVERRIDE/$component/post-install, it
|
|
will be added to the package, executed after installation, and then
|
|
removed if it exits successfully.
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
OS NOTES
|
|
|
|
Apple OS X:
|
|
|
|
If using 'bash' as the job execution shell, '.bashrc' may not be
|
|
executed. Use '#!/bin/bash -l' at the start of the pbs command file
|
|
to force this script to be run.
|
|
|
|
Some versions of OSX have a buggy bind() preventing binding to privileged
|
|
ports. In this case, --disable-privports should be used.
|
|
|
|
gcc 4.0 on OS X will not compile TORQUE with -pendantic -Werror (installed
|
|
with Developer Tools versions prior to 2.5) . run configure with the
|
|
--disable-gcc-warnings to build TORQUE with gcc 4.0 on OS X. gcc installed
|
|
by Apple Developer Tools 2.5 and newer will compile TORQUE without warning
|
|
|
|
TORQUE's configure script generates many error messages on OSX. While they
|
|
are generally not a problem, 'autoreconf -v -f -i' will generate all new
|
|
scripts by the OSX version of autotools.
|
|
|
|
OS X 10.5 (Leopard) support:
|
|
|
|
The Leopard release of OS X caused a few issues with TORQUE
|
|
|
|
1) TORQUE now has difficulty authenticating a user in certain circumstances,
|
|
and it doesn't always seem to be repeatable.
|
|
|
|
2) The code encapsulated by the HAVE_WORDEXP macro in pbs_mom causes causes
|
|
a child process of pbs_mom that copies the stderr and stdout files back
|
|
to the user to crash and the job gets stuck in the "E" state. Until we
|
|
have a better solution a work around for this issue is to edit
|
|
src/include/pbs_config.h, and search for HAVE_WORDEXP. Comment out
|
|
the #define HAVE_WORDEXP 1
|
|
|
|
Unfortunately it is likely that issue 1) will still arise.
|
|
|
|
|
|
|
|
TRU64/DIGITALUNIX: If building for a TRU64/Digital Unix cluster, some
|
|
users have reported problems building pbs_mom. To correct this add
|
|
the path to librt.a (ie, '/usr/lib/librt.a') to the pbs_mom linker
|
|
line in ~/src/resmom/Makefile
|
|
|
|
|
|
Linux 32bit vs. 64bit: At least Suse 10.0 ppc64 wants to build 32bit by
|
|
default. This is how you build 64bit TORQUE:
|
|
./configure CC="gcc -m64"
|
|
|
|
Similarly, 32bit builds on an x86_64 platform:
|
|
./configure CC="gcc -m32"
|
|
|
|
And also, make yourself rpms:
|
|
./configure --prefix=/usr --mandir=/usr/share/man \
|
|
--libdir=/usr/lib/torque/lib64 CC="gcc -m64"
|
|
make RPMOPTS="--target ppc64" rpm
|
|
|
|
./configure --prefix=/usr --mandir=/usr/share/man \
|
|
CC="gcc -m32"
|
|
make RPMOPTS="--target i386" rpm
|
|
|
|
|
|
AIX 32bit vs. 64bit: AIX builds are 32bit by default. In order to build
|
|
build 64bit TORQUE use:
|
|
./configure CC="xlc -q64" AR="ar -X 64" NM="nm -X 64 -B"
|
|
|
|
Using CC="gcc -m64" requires the same AR and NM settings.
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|