RE: [ROOT] Do not install ROOT in "Program Files"

From: Faine, Valeri (fine@bnl.gov)
Date: Wed Nov 13 2002 - 20:31:11 MET


Hello Francois,

 I guess there is no contradiction between different solutions.

 In fact this problem, namely, using the file name with the "blank"
inside 
is difficult to solve under UNIX and it is trivial under Windows.

 Just to remind you. 

  Under Windows:

  1. Each directory is given with TWO names.
  2. Any application is free to open the file with either name.

(see: 
http://support.microsoft.com/default.aspx?scid=kb;en-us;142982 
for futher information) 

 For example for the directory "long" name in question:

          "Program Files"

 Windows file system does provide automatically another "short" name,
namely  

           "PROGRA~1".

As one can see the second "short" one has no blank and does point to the
same directory, and it is as good as the "long" name

This means just the ROOTSYS variable would point to this "short" name
everything should be fine.
This needs no change in the ROOT code at all, Just a short advice on
ROOT Web site is required.

On other hand we still have to be able to manage the file names with the
blanks for either platform. I think both kinds of the systems suggest 
one and the same solution -  "Use quotation"

Therefore I propose:

  1. Put the quotes into all makefile's (Windows or UNIX doesn't matter)

     as a precaution measure.
  2. Recommend users to use the short directory name rather the long 
     one under Windows.

This should solve the problems we are discussing here.
Does it sound difficult?

I have done this for the BNL distribution (http://root.bnl.gov) 
and it will be uploaded with the next development cycle.
This will automatically assign a short name for ROOTSYS.
At the moment it does introduce the separate env. variable, namely
ROOTPATH 
with the "short" file name. 
That was not correct as this discussion has revealed

  Thank you 
                       Valeri





and
>   Hello Valeri,
>   I would hesitate between 2 solutions:
>    (1) - your solution 3.
>    (2) - a 4th possibility, which simply consists in doing nothing and
> advise users not to put ROOT in a directory with a blank in the name.
>   You should take the decision with René and the ROOT staff. In case
your
> solution 3 is adopted, please modify the makefile which is provided
with
> ROOT in root/test.
> 
> François-Xavier Gentit
> DAPNIA/SPP CEA Saclay
> http://gentit.home.cern.ch/gentit/
> 
> 
> 
> -----Message d'origine-----
> De : Faine, Valeri [mailto:fine@bnl.gov]
> Envoyé : mardi 12 novembre 2002 17:14
> À : GENTIT Francois-Xavier DAPNIA
> Cc : roottalk@pcroot.cern.ch
> Objet : RE: [ROOT] Do not install ROOT in "Program Files"
> 
> 
> Hello François,
> 
> Thank you very much for you example. That has allowed me to understand
> the user's need better.
> 
> The bottom line:
> ----------------
> If the file name contains any special symbol or blank it must have
been
> advised to quote this file name. This approach should work for either
> platform, since the modern UNIX systems do allow the blanks and the
> special symbols for the file names also.
> 
> Anyway . . .
> 
> There are three different solutions here:
> 
> 1. I can add for both kind of platforms namely Win9<x> and NT<x>
> one extra env. variable. Let's call it ROOTPATH, that is to contain
the
> "short" version of ROOTSYS with no blank.
> (Try the command prompt command "dir /X c:\ " to reveal the short
names)
> This variable had been done with Win9x installation (try
> http://root.bnl.gov) and can be done for NT<x> as well.
> (Cons: one can change the NTFS setting to prevent it to generate the
> short names)
> 
> For example:
> > dir /X c:\
>  . . .
> 11/07/2002  10:21a      <DIR>          PROGRA~1        Program Files
> . . .
> 
> 2. As p.1 above but ROOTSYS itself is to be assigned in short form
right
> away, no extra ROOTPATH is needed.
> 
> 3. Adjust your makefile (see attachment)
> 
>    Can you try to change your makefile.
>    I propose to add one extra variable
>    Let's say:
> 
>    ROOTPATH = "$(ROOTSYS)"
> 
>    and use it instead of ROOTSYS.
>    Since ROOTPATH is quoted this may not have confused any Windows (or
> UNIX:-) utility.
> 
> I'd like to mention the 3-d approach should work for either UNIX or
> Windows
> properly with no extra trick. The first and second would work but they
> would have hidden the problem rather to cure it. The file names with
> special symbols or/and blanks inside is to be quoted to be treated
> properly.
> 
> Let me know which way you like and whether third case causes any
> troubles for you.
> 
> Myself likes the third solution since it shows how the file name with
> blanks are to be managed properly and doesn't rely on any special file
> system feature (like generating two different namespaces for one and
the
> same file)
> 
> Very likely these approaches should be mentioned somewhere on ROOT Web
> site.
> 
>                My best regards, Valeri
> 
> > -----Original Message-----
> > From: GENTIT Francois-Xavier DAPNIA [mailto:GENTIT@dapnia.cea.fr]
> > Sent: Tuesday, November 12, 2002 2:59 AM
> > To: 'Faine, Valeri'
> > Subject: RE: [ROOT] Do not install ROOT in "Program Files"
> >
> >   Dear Valeri,
> >   Muster3, joined with this mail, is a kind of minimum "hello"
> program,
> > using ROOT, that I always try first just after having installed ROOT
> on
> > the
> > PC of a colleague of me willing to work with ROOT. It uses a
makefile
> and
> > this makefile contains $(ROOTSYS). When ROOT has been installed in
> > c:\Program files, it seems that the ROOT library are not found
because
> of
> > the blank character in Program files.
> >
> > François-Xavier Gentit
> > DAPNIA/SPP CEA Saclay
> > http://gentit.home.cern.ch/gentit/
> >
> >
> >
> > -----Message d'origine-----
> > De : Faine, Valeri [mailto:fine@bnl.gov]
> > Envoyé : vendredi 8 novembre 2002 16:53
> > À : GENTIT Francois-Xavier DAPNIA; roottalk@pcroot.cern.ch
> > Objet : RE: [ROOT] Do not install ROOT in "Program Files"
> >
> >
> > Hello François,
> > I am sorry. It sounds I misunderstood the problem missing your
> >   ". . .one has problems after that with makefile. . ."
> >
> > Can you tell me how I can reproduce the problem?
> > Is it Win 9x?
> >
> > For the Win9x family the installation mentioned below introduced one
> > extra environment variable, namely ROOTPATH along with ROOTSYS.
> > ROOTPATH is a "short version" of ROOTSYS, that can be used to avoid
> the
> > confusion within any user Makefile.
> > Check you autoexec.bat file after installation to see ROOTSYS and
> > ROOTPATH values.
> >
> >            Thank you, Valeri
> >
> >
> > >
> > > Hello François,
> > > Try the installation from http://root.bnl.gov
> > > It will set any Windows environment properly for any directory and
> any
> > > Windows platform (I hope, Let me know if there is still any
> problem).
> > > No extra user effort is required, just click there and reply some
> > usual
> > > questions. ("Program Files" should be fine as well)
> > >
> > > To avoid the clash with other ROOT installation, please remove it
> > first.
> > > Or make sure your PATH and/or autoexec.bat don't contain the old
> ROOT
> > > directory.
> > >
> > >   My best regards, Valeri
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: owner-roottalk@pcroot.cern.ch
> > > [mailto:owner-roottalk@pcroot.cern.ch]
> > > > On Behalf Of GENTIT Francois-Xavier DAPNIA
> > > > Sent: Friday, November 08, 2002 7:51 AM
> > > > To: 'roottalk@pcroot.cern.ch'
> > > > Subject: [ROOT] Do not install ROOT in "Program Files"
> > > >
> > > >   Dear Rooters,
> > > >   I had twice to help rooters [Benoit.Horeau@cea.fr, and
> > > > Patrick.Jarry@cern.ch] because of the following problem
concerning
> > > ROOT on
> > > > Windows:
> > > >  if ROOT is installed in the directory C:\Program Files,  (
which
> is
> > > > proposed by default ! )  one has problems after that with
> makefile,
> > > > because
> > > > of the blank character in "Program Files".
> > > >   A warning should be given to users on the ROOT download page,
> and
> > > you
> > > > should choose C:\  instead of C:\Program Files for the default
> > > directory
> > > > proposed.
> > > >   Thanks
> > > >
> > > > François-Xavier Gentit
> > > > DAPNIA/SPP CEA Saclay
> > > > http://gentit.home.cern.ch/gentit/
> >



This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:17 MET