Re: Building ROOT on VMS/Alpha: CMZ 1.50 environment variable problems

From: Kris Hagel (hagel@comp.tamu.edu)
Date: Mon Apr 12 1999 - 15:44:33 MEST


Matthew,
On OpenVMS, ROOTSYS needs to be defined in the following way:
ROOTSYS:== $  ROOTSYS :== $SCR:[LANGSTON.ROOT.]
if I assume that the root distribution is in $SCR:[LANGSTON.ROOT]  Then,
later
in the login command file, you need to define the symbols to run the
program: ie
$root:==$'rootsys'[bin]root
$rootcint:==$'rootsys'[bin]rootcint

The cmz install procedure compiles all the files and builds the libraries as
well as links
cint.  However, it does not yet link root.  To do that, you need the
following command file.  That needs to be cleaned up and put into the cmz,
but we have not done that yet.

There are several caveats with the VMS Root.  One is that it is not
advertised to be released as a completed product.  The latest version of
root that we have compiled and linked is version 2.06.  As you may have
learned from one or two messages on this list, we have had problems which
are not yet solved with loading in sharable libraries (one of the most
important parts of root)  We decided to solve that problem before proceeding
with keeping things going with each latest version root.  There is no
fundamental reason, however, why it should not work.  So what you will build
is an executable version of root which can run the tutorials or use any of
the root facilities that are built into root.  But loading shared libraries
does not yet work.

Kris Hagel
--------------------link_root.com----------------------------------------------

$define sys$output link_root.lis
$!cxxlink/map/full/exe=[.bin]root [.src]main_rmain.o,-
$cxxlink/debug/map/full/exe=[.bin]root [.src]main_rmain.o,-
[.lib]LIBNEW.OLB/lib,-
LIBEG.OLB/lib,-
LIBBASE.OLB/lib,-
LIBCINT.OLB/lib,-
LIBCLIB.OLB/lib,-
LIBCONT.OLB/lib,-
LIBGRAF.OLB/lib,-
LIBFUNC.OLB/lib,-
LIBGRAF3D.OLB/lib,-
LIBHIST.OLB/lib,-
LIBHTML.OLB/lib,-
LIBMATRIX.OLB/lib,-
LIBMETA.OLB/lib,-
LIBMINUIT.OLB/lib,-
LIBGPAD.OLB/lib,-
LIBGX11.OLB/lib,-
LIBNET.OLB/lib,-
LIBPOSTSCRIPT.OLB/lib,-
LIBRINT.OLB/lib,-
LIBBASE.OLB/lib,-
LIBTREE.OLB/lib,-
LIBPROOF.OLB/lib,-
LIBX3D.OLB/lib,-
LIBZIP.OLB/lib,-
LIBCLIB.OLB/lib,-
LIBVMS.OLB/lib,-
LIBGUI.OLB/lib,-
LIBMETA.OLB/lib,-
LIBGX11.OLB/lib,-
LIBGPAD.OLB/lib,-
LIBGUI.OLB/lib,-
user8$:[root.xpm]libxpm/lib,-
sys$input/opt
sys$share:decw$xlibshr.exe/share
sys$share:decw$xmlibshr12.exe/share
sys$share:decw$xtlibshrr5.exe/share
sys$share:decw$xtraplibshr.exe/share
--------------------------end of
link_root.com---------------------------------

Matthew D. Langston wrote:

> Hi Rene,
>
> I am trying to build ROOT on VMS/Alpha using nothing but cmz and the
> latest `root.cmz' file.  However, cmz version 1.50 on SLAC's VMS/Alpha
> computers can't seem to dereference environment variables like I expect
> it to.
>
> In particular, the $kuamcs/setup macro is exiting whenever I try to
> build ROOT because it calls the $kumacs/checkenv macro which tests to
> determine if the $ROOTSYS environment variable is set properly.  For
> reference, here is the $kumacs/checkenv macro:
>
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>                          begin $kumacs/checkenv
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
> +DECK,checkenv.
> *CMZ :  0.90/01 29/10/96  15.16.11  by  Fons Rademakers
> *-- Author :    Fons Rademakers   23/07/96
> macro checkenv
>
> * make sure $ROOTSYS is defined
>
> if $ROOTSYS = '$ROOTSYS' then
>    mess '$ROOTSYS' not defined
>    exit
> endif
>
> return
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>                           end $kumacs/checkenv
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>
> I have tried setting the following logicals and variables in my
> VMS/Alpha environment, but the $kumacs/checkenv macro still can't
> dereference $ROOTSYS:
>
>   $ define  ROOTSYS $SCR:[LANGSTON]
>   $ define $ROOTSYS $SCR:[LANGSTON]
>   $  ROOTSYS :== $SCR:[LANGSTON]
>   $ $ROOTSYS :== $SCR:[LANGSTON]
>
> Here is some sample output from running cmz on the `root.cmz' file.  In
> particular, notice that calling the cmz built-in function "mess
> $ENV(ROOTSYS)" properly dereferences ROOTSYS, but that calling "mess
> $ROOTSYS" does not.
>
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>                             begin cms output
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
> SLDA6:LANGSTON> run $bin:cmz
>
>    *********************************************************
>    *     CMZ Code Manager version  1.50/14  (21/01/99)     *
>    *                                                       *
>    * Version news at http://wwwinfo.cern.ch/cmz/index.html *
>    *********************************************************
>
>  Welcome to ROOT
> root [1] mess $ENV(ROOTSYS)
>  $SCR:[LANGSTON]
> root [2] mess '$ROOTSYS'
>  $ROOTSYS
> root [3] mess 'ROOTSYS'
>  ROOTSYS
> root [4]
> root [4] exec setup
>  setup called for machine=- and optimisation=opt
>  $ROOTSYS not defined
>
> All connected CMZ files are now released
>
> **** CMZ normal termination ****
>
>  *** MACRO/EXEC: macro file SELECTSYSTEM not found
>  *** MACRO/EXEC: cannot execute SELECTSYSTEM
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>                              end cmz output
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>
> Can you tell me how I define the ROOTSYS environment variable properly
> under VMS so that the macros in the $kumacs PATCH work properly?  I
> ultimately want to do a "cmz -install root" under VMS/Alpha to see how\
> far I can get with compiling, linking and hopefully running.
>
> Thank you.  Regards, Matt
>
> --
> Matthew D. Langston
> SLD, Stanford Linear Accelerator Center
> langston@SLAC.Stanford.EDU



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:31 MET