"G__ci.h missing"

Hi all,

Trying to install MIIND for work on my final year undergrad project. Been having lots of trouble with dependencies and whatnot which, so far, I’ve been able to solve. I’m having trouble with this one, though. I’m getting the following error when I run make:

In file included from /home/Ant/code/libs/ClamLib/dict.cxx:16:0:
/home/Ant/code/libs/ClamLib/dict.h:18:24: fatal error: cint/G__ci.h: No such file or directory

A bit of Googling around suggests that this header is part of ROOT. I have also managed to find the file on my hard drive, but the compiler is failing to pick it up. Maybe there’s some system variables that I haven’t set up correctly?

I followed this page with regard to setting PATH, ROOTSYS and LD_LIBRARY_PATH, but still no luck.

Any help appreciated.

Edit: Oh, and I’m working on Fedora :unamused:

it seems to me that your “dict." files have not been properly generated by your ROOT (it should search for ${ROOTSYS}/include/G__ci.h", not for “${ROOTSYS}/include/cint/G__ci.h”).
Try to "rm /home/Ant/code/libs/ClamLib/dict.
” (this will kill both “dict.cxx” and “dict.h”).
Then try to make MIIND again (it should call “rootcint” which will hopefully properly recreate “dict.*” files).
BTW. Make sure that you are using the ROOT version that you really want (you may have multiple incompatible ROOT versions present in your PATH and LD_LIBRARY_PATH). Try “type root” (or “which root”) and “type rootcint” (or “which rootcint”). The www page that you mentioned advices the user to append ROOT related paths to relevant system variables. Actually, I believe, you should PREPEND them with ROOT related subdirectories (so that your ROOT-version-specific subdirectories are searched first).
I am stupid. No?
Pepe Le Pew.

Thanks, removing the “dict” files did the trick. I also altered my system variables as you suggested.

I’m now getting a different error, however:

Linking CXX shared library libmiindclam.so /usr/bin/ld: cannot find -lPostscript /usr/bin/ld: cannot find -lPhysics collect2: ld returned 1 exit status make[2]: *** [libs/ClamLib/libmiindclam.so] Error 1 make[1]: *** [libs/ClamLib/CMakeFiles/miindclam.dir/all] Error 2 make: *** [all] Error 2

Edit: In case it’s a problem with ROOTSYS, here are the relevant entries in my .bashrc:

export ROOTSYS=~/code/root export LD_LIBRARY_PATH=$ROOTSYS/lib:$LD_LIBRARY_PATH export PATH=$ROOTSYS/bin:$PATH

Update: Okay, found out what packages those flags belonged to and installed them manually. Managed to get the whole framework to install (at last)! Now to try and get the Python interface running so I can write scripts for it. Thanks again for your help.

one more comment.
I downloaded the “miind005.tar.gz” source code.
I noticed that there exist “./code/libs/ClamLib_Win32/ClamLib/dict." files, and the “dict.h” contains ‘#include “cint/G__ci.h”’.
Maybe that’s where you got it from.
But you run it on “Fedora”, while the subdirectory name clearly suggests “Win32”.
Is it possible that your MIIND configuration is screwed (there exists also the “./code/libs/ClamLib” subdirectory, which doesn’t seem to be “operating-system-specific”, and it does not contain any "dict.
” files)?
I am stupid. No?
Pepe Le Pew.