Problems starting root with Scientific Linux 3

Hello rooters

I have just been given a desktop with SL 3.04 pre-installed and then compiled ROOT on it. First, I tried v4-03-02, but I got a segfault immediately. I tried running rootn.exe and it came up, so I figured it was a problem with the splash screen. When I ran it through the debugger (gdb) my suspicion was confirmed. I thought that it might be a problem with the ROOT version, so I upgraded to v4-03-04, but exactly the same problem occured. Then I tried the HEAD. Same problem. Then I compiled it with the Intel compilers (box is Intel Pentium IV based) and I got the same problem.
Here is some diagnostic information…

running it through idb :

[bbecker@phnpcg219 HEAD]$ idb `which root`
Linux Application Debugger for 32-bit applications, Version 8.1-3, Build 20040715
------------------ 
object file name: /local/home/bbecker/Root/HEAD/bin/root 
Reading symbolic information from /dsm/phnpcg219/local/home/bbecker/Root/HEAD/bin/root...done
(idb) run
Thread received signal SEGV
stopped at [void PopupLogo(short:8):383 0x0804bb85]
    383    XSetFont(gDisplay, gGC, gFont->fid);
(idb) where
>0  0x0804bb85 in PopupLogo(about=0) "rootx/src/rootxx.cxx":383
#1  0x0804a564 in main(argc=1, argv=0xbfffa8f4) "rootx/src/rootx.cxx":336
#2  0x0013179d in __libc_start_main(...) in /lib/tls/libc-2.3.2.so
#3  0x080498e1 in _start(...) in /dsm/phnpcg219/local/home/bbecker/Root/HEAD/bin/root

and with rootn.exe, I get :

Warning in <TGClient::GetFontByName>: couldn't retrieve font -adobe-helvetica-medium-r-*-*-12-*-*-*-*-*-iso8859-1, using "fixed"
Warning in <TGClient::GetFontByName>: couldn't retrieve font -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-iso8859-1, using "fixed"
Warning in <TGClient::GetFontByName>: couldn't retrieve font -adobe-helvetica-medium-r-*-*-10-*-*-*-*-*-iso8859-1, using "fixed"

Another symptom is that when I run root on another machine and export the display to my desktop, I get the same behaviour. The same root ran fine before the installation of SL3.

This looks like a conflict between the system and ROOT fonts, no ? How can I fix it ?

Hi Bruce

What is the settings for the environment variables $ROOTSYS, $PATH and $LD_LIBRARY_PATH in the box? AFAIK, ROOT looks for its fonts in the $ROOTSYS/fonts directory.

Hi Bruce,

I had the same font problem passing to SLC3. To make root fonts available to the SLC3 there are two ways:

  • as su:
  1. add your $ROOTSYS/fonts directory to the /etc/X11/fs/config file;
  2. restart the font server by: /sbin/service xfs restart
  • as user (please modify the first command according your shell)
  1. xset fp+ $ROOTSYS/fonts
  2. xset fp rehash

Best regards, Ilka

Hi Ilka
First of all, thanks for the advice. I’m going to try it out soon. I tracked this down after lunch to find out what’s going on when it crashes. The problem comes down to this line in [quote]$ROOTSYS/rootx/src/rootxx.cxx[/quote]

It’s only the rootx frontend which dies when trying to load this font. Indeed, the debugger tells me that gFont is null :

(idb) run
Thread received signal SEGV
stopped at [void PopupLogo(short:8):383 0x0804bb85]
    383    XSetFont(gDisplay, gGC, gFont->fid);
(idb) where
>0  0x0804bb85 in PopupLogo(about=0) "rootx/src/rootxx.cxx":383
#1  0x0804a564 in main(argc=1, argv=0xbfffe394) "rootx/src/rootx.cxx":336
#2  0x0040f79d in __libc_start_main(...) in /lib/tls/libc-2.3.2.so
#3  0x080498e1 in _start(...) in /dsm/phnpcg219/local/home/bbecker/Root/HEAD/bin/root
(idb) print gFont
0x0

So, could it be due to the fact that perhaps the font required is not installed or in the path ?

Hi Ilke

I tried this (using bash) and got the folling error :

Indeed, there is no fonts.dir in $ROOTSYS/fonts, but I don’t think there ever has been.

Hi Bruce,

Please use:
xset +fp $ROOTSYS/fonts

Cheers, Ilka

Hi Ilke.

Sorry, I forgot to mention that I tried that too (prepending and appending the path), but I get the same error :

I have XFree86-4.3.0-81.EL, by the way…

It works for me with the XFree86 Version 4.3.0.

–Ilka

That’s wierd. probably my shell… bash-2.05b-29.0.3. Otherwise, I have no clue. I guess it’s something set up incorrectly on my side. Thanks for the advice anyway !

Bruce

Just for information:

bash-2.05b$ bash -version
GNU bash, version 2.05b.0(1)-release (i686-pc-linux-gnu)

Cheers, Ilka

Hi Bruce,

make sure that you have installed the rpms:

XFree86-75dpi-fonts
XFree86-100dpi-fonts

they contain the adobe fonts used by ROOT.

I’ve modified the ROOT front-end $ROOTSYS/bin/root to not segv in case the adobe font is not found and to print a hint which rpms to install.

Cheers, Fons.

Yeah, I sort of figured that out along the way… then I was trying to figure out a way to install fonts on a machine to which I don’t have the root password ! But anyway, thanks for the hint and the help. I will update my ROOT… and shout at my sysad. :imp:

cheers
Bruce