cernlib, preprocessor, etc

From: Djamel Ouerdane (ouerdane@nbi.dk)
Date: Mon Mar 05 2001 - 05:56:14 EST

  • Next message: Djamel Ouerdane: "update in gbrahms"

    Hi brahms developers,
    
    I've noticed some problems when I tried to compile gbrahms on my machine
    (Red Hat linux 7.0)
    
    The cernlib (2001) has slightly changed (cf README file enclosed with the
    library). I had to add in geant.mk the following line:
    
     -L$(LIB) -llapack3 -lblas
    
    with the usual stuff
    
    The other thing concerns the preprocessor. Some files (*.F) need to be
    preprocessed before being compiled. The rule to preprocess the *.F files
    is:
    
    gcc -E -C -P -x c $(CPPFLAGS) $(D_SYMBOLS) -o $*.f $<
    
    Among options of the preprocessor (gcc), there is -x c
    which means that it treats the input file like a c file (as far as I
    know). My version of gcc is 2.96 (according to Christian, this version is
    known to be buggy), this is the one that you get with redhat 7.
    One of the bad consequence of this is to reduce the space between
    numerical labels and statements (in the source file) to one space. More
    precisely, suppose that in your *.F file, you have this piece of code:
    
       ...
       ...
       ...
    c234567 , comment for column index
    
          if (something) goto 10
       ...
       ...
       ...
    
    10    return
          end
    
    
    This kind of thing is fine. But when you preprocess this code with the
    option -x c, you will get in the output (*.f) file:
    
          if (something) goto 10
       ...
       ...
       ...
    
    10 return
          end
    
    
    when you want then to compile this file, it will obviously fail.
    The trick I used was to shift the label to the right in the *.F file
    so that you get (*.f file):
    
    
          if (something) goto 10
       ...
       ...
       ...
    
       10 return
          end
    
    
    
    My question is then: do we really need the option -x c for the
    preprocessing ? So far there wasn't any problem but with redhat 7, that's
    not the case.
    
    I'm not an expert of this kind of thing so I wish some of
    you know better than me :)
    
    Thanks
    
    Ciao
    Djamel
    
    
    -- 
    :o) ****************************************************** )o:
    |ME	: Djamel Ouerdane   EMAIL  : ouerdane@nbi.dk         |
    |OFFICE : Tb1 @ NBI	    PHONE  : +45 353 252 69 (office) |
    |INST   : Niels Bohr Institute,                              |
    |         Blegdamsvej 17, 2100 København Ø, Danmark          |
    |HOME	: Jagtvej 141 2D, 2200 København N, Danmark  <- NEW!!!
    :oD ****************************************************** \o:
    



    This archive was generated by hypermail 2b29 : Mon Mar 05 2001 - 05:57:59 EST