Bug writing gif files in 4.04.02f

Hi all,

I have some trouble in writing gif/png files in version 4.04.02f. I attached a very simple ROOT macro, which crashes with:

root [0] .L testMacro.C++
Info in TUnixSystem::ACLiC: creating shared library /home/denis/work/btotauAnalysis/./macros/testMacro_C.so
In file included from /home/denis/work/btotauAnalysis/macros/fileogIVeE.h:32,
from /home/denis/work/btotauAnalysis/macros/fileogIVeE.cxx:16:
/home/denis/work/btotauAnalysis/macros/testMacro.C: In function void testMacro()': /home/denis/work/btotauAnalysis/macros/testMacro.C:11: warning: unused variableTF1*gaus’
root [1] testMacro()
Error in : BadMatch (invalid parameter attributes) (TGCompositeFrame XID: 65012101, XREQ: 73)
TGCompositeFrame: 65012101
TGViewPort: 65012076
TGCanvas: 65012075
TGCompositeFrame: 65012073
TRootCanvas: 65011878

Note, that under version 4.03.xx the problem does not occur. It further seems not to be related to the architecture. At least under Suse9.3 and Scientific Linux 3.03 the macro crashes with similar output. One more curious thing: If I execute the lines per hand at the ROOT prompt, the gif is written normaly.

Any ideas?
Cheers, Denis.
testMacro.C (293 Bytes)

Hi Denis,

I cannot reproduce the reported case when I run your macro. After I installed version 4.04/02f from source I run your macro without problems as you can see below. Even I created using the menu c1.gif that looks fine too.

[code]~/root404/root/tutorials > root.exe


  •                                     *
    
  •    W E L C O M E  to  R O O T       *
    
  •                                     *
    
  • Version 4.04/02f 16 July 2005 *
  •                                     *
    
  • You are welcome to visit our Web site *
  •      http://root.cern.ch            *
    
  •                                     *
    

FreeType Engine v2.1.9 used to render TrueType fonts.
Compiled on 15 September 2005 for linux with thread support.

CINT/ROOT C/C++ Interpreter version 5.15.169, Mar 14 2005
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.

Welcome to the ROOT tutorials

Type “.x demos.C” to get a toolbar from which to execute the demos
Type “.x demoshelp.C” to see the help window

root [0] .x testMacro.C
Info in TCanvas::Print: file gaus.gif has been created
root [1] Info in TCanvas::Print: file ./c1.gif has been created
root [1] .!~/xv gaus.gif
root[2] .q
[/code]
The file gaus.gif is attached also.
I am getting different errors if I try to compile it as you. The errors I got are included below:

root [6] .L testMacro.C++ Info in <TUnixSystem::ACLiC>: creating shared library /home/antcheva/root404/root/tutorials/./testMacro_C.so rootcint: relocation error: rootcint: undefined symbol: G__set_ioctortype_handler Error in <ACLiC>: Dictionary generation failed! Info in <ACLiC>: Invoking compiler to check macro's validity Info in <ACLiC>: The compiler has not found any problem with your macro. Probably your macro uses something rootcint can't parse. Check http://root.cern.ch/root/Cint.phtml?limitations for Cint's limitations.
Cheers, Ilka


Hi Ilka,

hmm, which architecture have you used. As I said the crash happened on Suse9.3 and SL3.03. I further noticed, that you get additional output on startup of root:

FreeType Engine v2.1.9 used to render TrueType fonts.
Compiled on 15 September 2005 for linux with thread support.

I don’t get these lines when I start ROOT. No idea if this could make the difference.

Cheers, Denis.

Hi Ilka,

the font directory was not set correctly in my .rootrc file. Now I am able to create the gif file in batch mode. But there is still the same problem, when I run in graphics mode.

Cheers, Denis.

Hi Denis,

I have SLC3 as environment running on PC (Intel Pentium IV) and I have compiled root in debug mode with: gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-52). No idea what could cause the different output we got.

Cheers, Ilka

Hi Ilka,

I think I have found the problem. I explicitely enabled the event status bar in my personal .rootrc file via:

        Canvas.ShowEventStatus:     true

After removing this or setting to false, everything works fine. So this is a clear bug, which should be fixed.

Cheers, Denis.

Hi Denis,

I had no status bar set to true in my .rootrc file and I got the errors provided above. Please provide exactly the settings + the steps to follow that show the problem you have faced on. I should to be able to reproduce it and to see what settings made it to disappear.

Thank you, Ilka

Hi Ilka,

ok, here is once more what I have done:

  1. Edit your .rootrc and insert “Canvas.ShowEventStatus: true”

  2. Compile testMacro.C and run it in root: “.L testMacro.C++; testMacro()”
    ----> You should get the errors I have written in the first posting, when the gif should be written.
    ----> I have no idea where the ACLIC messages you got come from. I don’t see them.

  3. Edit your .rootrc and change “Canvas.ShowEventStatus: false”

  4. Repeat step 2
    ----> The gif should be written without problems.

I tried this on Suse9.3 and SL3.03 with the same result. So I am pretty sure, that you will encounter, what I have seen. I attached two output files showing the “gEnv->Print()” output for the crashed and succeeded job. I hope this helps to solve the problem.

Cheers, Denis.

OK, here are the attachments. Hope it works this time.
testMacro_succ.txt (13.6 KB)
testMacro_crash.txt (13.8 KB)