When you are debugging your development work, you want to build PBS without any optimizations, and with the debug flag.
We have changed the steps in https://github.com/PBSPro/pbspro/blob/master/INSTALL to reflect what a developer needs, because the standard INSTALL instructions are for non-developers. The steps are as follows:
For CentOS systems, run the following command as root:
yum install -y gcc make rpm-build libtool hwloc-devel \
libX11-devel libXt-devel libedit-devel libical-devel \
ncurses-devel perl postgresql-devel python-devel tcl-devel \
tk-devel swig expat-devel openssl-devel libXext libXft \
autoconf automake
For openSUSE systems, run the following command as root:
zypper install gcc make rpm-build libtool hwloc-devel \
libX11-devel libXt-devel libedit-devel libical-devel \
ncurses-devel perl postgresql-devel python-devel tcl-devel \
tk-devel swig libexpat-devel libopenssl-devel libXext-devel \
libXft-devel fontconfig autoconf automake
For Debian systems, run the following command as root:
sudo apt-get install gcc make libtool libhwloc-dev libX11-dev \
libXt-dev libedit-dev libical-dev ncurses-dev perl \
postgresql-server-dev-all python-dev tcl-dev tk-dev swig \
libexpat-dev libssl-dev libxext-dev libxft-dev autoconf \
automake
For CentOS systems, run the following command as root:
yum install -y expat libedit postgresql-server python sendmail sudo tcl tk libical
For openSUSE systems, run the following command as root:
zypper install expat libedit postgresql-server python sendmail sudo tcl tk libical1
For Debian systems, run the following command as root:
apt-get install expat libedit2 postgresql python sendmail-bin sudo tcl tk libical1a
tar -xpvf pbspro-14.0.1.tar.gz
cd pbspro-14.0.1
./autogen.sh
./configure --help
For CentOS and Debian systems you should run the following command:
./configure --prefix=/opt/pbs
For openSUSE systems (see note 3 below) you should run the following command:
./configure --prefix=/opt/pbs --libexecdir=/opt/pbs/libexec
make
sudo make install
sudo /opt/pbs/libexec/pbs_postinstall
sudo vi /etc/pbs.conf
sudo chmod 4755 /opt/pbs/sbin/pbs_iff /opt/pbs/sbin/pbs_rcp
sudo /etc/init.d/pbs start
For Bourne shell (or similar) run the following:
. /etc/profile.d/pbs.sh
For C shell (or similar) run the following:
source /etc/profile.d/pbs.csh
bash$ qstat -B
Server Max Tot Que Run Hld Wat Trn Ext Status
---------------- ----- ----- ----- ----- ----- ----- ----- ----- -----------
host1 0 0 0 0 0 0 0 0 Active
bash$ pbsnodes -a
host1
Mom = host1
ntype = PBS
state = free
pcpus = 2
resources_available.arch = linux
resources_available.host = host1
resources_available.mem = 2049248kb
resources_available.ncpus = 2
resources_available.vnode = host1
resources_assigned.accelerator_memory = 0kb
resources_assigned.mem = 0kb
resources_assigned.naccelerators = 0
resources_assigned.ncpus = 0
resources_assigned.vmem = 0kb
resv_enable = True
sharing = default_shared
license = l
bash$ echo "sleep 60" | qsub
0.host1
bash$ qstat -a
host1:
Req'd Req'd Elap
Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time
--------------- -------- -------- ---------- ------ --- --- ------ ----- - -----
0.host1 mike workq STDIN 2122 1 1 -- -- R 00:00
bash$