Re: [ROOT] RE:CINT filename extensions

From: Christoph Bugel (chris@tti-telecom.com)
Date: Wed Aug 08 2001 - 19:13:01 MEST


You are correct, CINTSYSDIR was not defined. I do that on purpose, because
I want to use only the required minimum, I don't want to need extra files
at runtime if it is not strictly necessary. The only file I still need at
runtime is bool.h, and I would like to fix that too, if possible. I just
use the core of cint, (libcint), without the stl libraries, include files,
without cint.exe.

I think that in my situation the error message about not finding MAKEINFO
occurs only when I call G__loadfile() with a filename containing an unknown
extension. I don't use MAKEINFO even at compilation time, (I made a custom
makefile), so I really want to avoid needing it file at runtime. I am
trying to use a 'standalone' libcint, with as little as possible things
needed at runtime. The smaller it is, the easier to understand :)

So I am now trying to find a solution.  I think I will first try to make a
'my_tempnam' function that will guarantee a filename without a dot.
Another option is to use the new G__load_text() API, which makes the
tempname by itself.  (What happens if cint generates a temp name with a dot
inside, will it also need MAKEINFO?)

I this doesn't work I will let you know :)

Thanks,
Christoph


On Wed 2001-08-08, Masaharu Goto wrote:
> Hello Christoph,
> 
> The change you requested can be made easily.  However, if it is
> a matter of finding MAKEINFO file, you can simply define an
> environment variable CINTSYSDIR. Cint looks for $CINTSYSDIR/MAKEINFO.
> The error obviously looks like this setting is missing.
> 
> set CINTSYSDIR=c:\cint     for windows
>         or
> export CINTSYSDIR=/home/xxx/yyy/cint   for UNIX
> 
> Thank you
> Masaharu Goto
> 
> 
> 
> >Date: Mon, 6 Aug 2001 14:17:13 +0300
> >From: Christoph Bugel <chris@tti-telecom.com>
> >To: roottalk@pcroot.cern.ch, rootdev@pcroot.cern.ch
> >Cc: meirr@tti.co.il
> >Subject: CINT filename extensions
> >
> >Hi!
> >
> >Our system takes a C++ sourcefile, copies it to a tempfile (the
> >filename is generated using tempnam()) and then ask cint to load the
> >files with G__loadfile().
> >
> >Usually this works fine, but once in a while cint will say "Error:
> >cannot open /MAKEINFO".  This happens only when the tempfile happens
> >to contain a dot (.)! for example: "/users/chris/tmp/scripAAAI.bpY_".
> >So I think this happened because cint tries to recognize the filename
> >extension. (even thought it is just a random string)
> >
> >I know cint needs to look at the filename extension in order to know
> >if the file is a sourcefile or a precompiled dll. As it is now, I
> >don't need cint to load dlls at runtime. Would it be possible to tell
> >cint (at compilation time) that *all* filenames (no matter what
> >extension) are source files?
> >
> >Thanks!
> 



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:56 MET