( Document last updated by Florence Ranjard )
Libraries are built in optimized and debug mode. Application are built in optimized mode.
To build a library in debug mode it is sufficient to provide a tag which defines the
debug mode on the various
platforms:
platform | optimize | debug |
Linux | tag = i386_linux22 | tag = Linuxdbx |
> telnet lxplus
> cd $HOME/newmycmt/package/v1/cmt
> cmt config
> source setup.csh
> gmake tag=Linuxdbx ! will build a library of package in the ../Linuxdbx
subdirectory
> telnet lxplus
> cd $HOME/mycmt/SICB/SICBDST/v250/cmt
> gmake tag=Linuxdbx
==> CMT will try to link all libraries from the ../Linuxdbx subdirectory of
every packages
from your working directory or the release
directory depending of your configuration:
if you want to link SICB in debug mode all
libraries must exist in debug mode in the
related $PACKAGEROOT.
assume that you want the Kalman filter and your own application code in debug mode
> telnet lxplus
> cd $KALMANROOT/cmt
> gmake tag=Linuxdbx
> cd $SICBDSTROOT/cmt
> cmt show macro_value fflags -tag=Linuxdbx
! to get the fortran flags for
lxplus in debug mode
-g -fno-automatic -fdollar-ok -ff90 -w -DSICBDEBUG
> -- edit requirements to add 2 macros
# redefine fflags for Linux(optimized) to use debug flags
macro fflags "" \
Linux "
g -fno-automatic -fdollar-ok -ff90 -w -DSICBDEBUG "
# define the kalman tag to be debug
macro kalman_tag "Linuxdbx"
> gmake clean all
you can check that the SICBDST compilation is done with debug flags and the application
is linked with libraries
stored in $PACKAGEROOT/i386_linux22 but $KALMANROOT/Linuxdbx.