next up previous contents index
Next: Basics about the compilation Up: Making a working pack Previous: Directory of working packs   Contents   Index

Creation of a working pack

As an example, here is how to build the branch opt on top of the branch bf of cycle 31t1 for the executable ALADIN :

% gmkpack -r31t1 -bbf -uopt -p aladin
/home/khatib/bin/gmkpack/util/gmkpack starts.
Creating pack /home/khatib/pack/opt upon /home/khatib/rootpack/31t1_bf.01.PGI616.x ...
Architecture file directory :
.gmkfile/
copy PGI.LXGMAP from directory /home/khatib/rootpack/31t1_bf.01.PGI616.x/.gmkfile
Programs system directories :
sys
sys/odb98.x -> /home/khatib/rootpack/31t1_main.01.PGI616.x/sys/odb98.x
sys/bl95.x -> /home/khatib/rootpack/31t1_main.01.PGI616.x/sys/bl95.x
Basic directories :
src
src/local
lib
bin
Unsatisfied external references directories :
src/unsxref/quiet
src/unsxref/verbose
Sources control directory :
src/.gmak
Sources view :
local
inter.1
main
Links :
src/inter.1 -> /home/khatib/rootpack/31t1_bf.01.PGI616.x/src/local
src/main -> /home/khatib/rootpack/31t1_main.01.PGI616.x/src/local
Background source descriptors files :
inter.1.sds
main.sds
"main" tree for ald ...
"main" tree for arp ...
"main" tree for bla ...
no tree for coh
"main" tree for mpa ...
"main" tree for mse ...
"main" tree for odb ...
no tree for ost
"main" tree for sat ...
"main" tree for sur ...
"main" tree for tal ...
"main" tree for tfl ...
"main" tree for uti ...
"main" tree for xrd ...
libarp.inter.1.a -> /home/khatib/rootpack/31t1_bf.01.PGI616.x/lib/libarp.local.a
libald.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libald.local.a
libarp.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libarp.local.a
libbator-uti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libbator-uti.local.a
libbla.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libbla.local.a
libcma-odb.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libcma-odb.local.a
libdummyald.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libdummyald.local.a
libdummybla.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libdummybla.local.a
libdummympa.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libdummympa.local.a
libdummymse.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libdummymse.local.a
libdummyodb.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libdummyodb.local.a
libdummysat.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libdummysat.local.a
libdummytal.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libdummytal.local.a
libextrtovs-uti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libextrtovs-uti.local.a
libfcq-uti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libfcq-uti.local.a
libgrib-uti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libgrib-uti.local.a
libmain-odb.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libmain-odb.local.a
libmpa.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libmpa.local.a
libmse.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libmse.local.a
libmtocomp-odb.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libmtocomp-odb.local.a
libodb.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libodb.local.a
liboulan-uti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/liboulan-uti.local.a
libport-odb.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libport-odb.local.a
libpregpssol-uti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libpregpssol-uti.local.a
libprescat-uti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libprescat-uti.local.a
libprograms-ald.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libprograms-ald.local.a
libsat.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libsat.local.a
libscr-odb.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libscr-odb.local.a
libsur.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libsur.local.a
libtal.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libtal.local.a
libtfl.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libtfl.local.a
libunsxref-verbose.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libunsxref-verbose.local.a
libuti.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libuti.local.a
libxrd.main.a -> /home/khatib/rootpack/31t1_main.01.PGI616.x/lib/libxrd.local.a
Background include/module paths ...
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/ald/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/arp/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/chem/internals
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/chem/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/conv/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/micro/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/turb/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mse/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/sat/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/sur/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/tal/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/tfl/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/uti/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/uti/prescat/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/fa
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/module
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/bla/library
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/bla/old2new
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/aux
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/lib
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/tools
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/support
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/svipc
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/utilities
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/ddl.CCMA
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/ddl.ECMA
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/ddl.ECMASCR
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/ddl.MTOCOMP
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/arp/ald_inc/function
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/arp/ald_inc/namelist
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/arp/common
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/arp/function
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/arp/namelist
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/bla/include
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/chem/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/chem/internals
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/conv/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/micro/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mpa/turb/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/mse/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/include
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/odb/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/sat/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/sur/function
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/sur/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/tal/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/tfl/interface
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/uti/include
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/uti/namelist
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/ddh
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/fa
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/include
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/lfi
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/xrd/svipc/include
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/.intfb/ald
-I/home/khatib/rootpack/31t1_main.01.PGI616.x/src/local/.intfb/arp
done.
Genesis :
/home/khatib/bin/gmkpack.6.3/util/gmkpack -r 31t1 -b bf -v 01 -u opt -l PGI616 -o x -p aladin

Prepare script(s) ...

>  copy compilation and load script on /home/khatib/pack/opt/ics_aladin ...
/home/khatib/bin/gmkpack/util/gmkpack ends.

GmkPack has created a pack named opt with a compilation script inside, named ics_aladin.
Remarks :

Discussion : together with a new naming convention as described in the introduction, the use of the option -u should be mandatory for working pack, so that any working pack could serve as a reference pack. Today this is possible only if the option -u is omitted, which would make unclear the stacking of reference packs.

This pack is lying upon the reference pack 31t1_bf.01.PGI616.x, as shown in the logfile :

Note that at this stage, the pack is always empty, that is : it does not contain any new source file (apart the source code coming from the reference pack) though subdirectories have been created.
The source code directories src/local/* have to be filled by yourself (for the time being there is no option in GmkPack to import source code).
Once this is done, you can submit or execute the compilation script :

./ics_aladin 2>&1 | tee ics_aladin.out
Here the output of ics_aladin is piped to tee in order to keep a logile of the execution. If there is no batch scheduler in the machine, another way to do that is to mimic the behavior of a scheduler in a script like the one below :
if [ -f $HOME/.qsub ] ; then
  i=$(cat $HOME/.qsub)
else
  i=0
fi
i=$(($i+1))
echo $i > $HOME/.qsub
chmod 755 $1
time ./$1 2>&1 | tee $1.o$i

If everything works fine you should get at the end new libraries in the directory lib and executables in the directory bin. Unless the source code added is huge the compilation should be fast.


next up previous contents index
Next: Basics about the compilation Up: Making a working pack Previous: Directory of working packs   Contents   Index
EL KHATIB Ryad 2008-05-23