Re: [ROOT] linking programs after upgrading to root4

From: Rene Brun (
Date: Sun Oct 03 2004 - 22:40:18 MEST

It looks like you are compiling your program with one type of compiler
and linking with a ROOT library compiled with a different compiler.

Rene Brun

Sun, 3 Oct 2004, Mark Wallace wrote:

> Hello,
>     I am using root4 on a debian linux machine.  The computer department 
> recently upgraded from root 3.10 to root 4.00/08.  when I try to compile 
> code c++ code I wrote with root objects in it I get these type of 
> error.  It does compile, but crashes on linking I think
> g++ -g -O -Wall -fPIC -pthread -I/soft/intel/root4/include/root 
> -I../Hira-Class/ -c evt2root.cpp
> g++ -O evt2root.o -L/soft/intel/root4/lib/root -lCore -lCint -lHist 
> -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics 
> -pthread -lm -ldl -rdynamic -L../Hira-Class/  -lCRootEvent  -o evt2root
> evt2root.o(.text+0x3f8): In function `LHira::LHira(void)':
> /user/hiratest/mark/working/root-unpackers/just-hira/evt2root.cpp:76: 
> undefined reference to `TStorage::ObjectAlloc(unsigned int)'
> evt2root.o(.text+0x412):/user/hiratest/mark/working/root-unpackers/just-hira/evt2root.cpp:76: 
> undefined reference to `TRandom::TRandom(unsigned int)'
> evt2root.o(.text+0x43e):/user/hiratest/mark/working/root-unpackers/just-hira/evt2root.cpp:76: 
> undefined reference to `TObject::operator delete(void *)'
> evt2root.o(.text+0x44e):/user/hiratest/mark/working/root-unpackers/just-hira/evt2root.cpp:76: 
> undefined reference to `TStorage::ObjectAlloc(unsigned int)'
> evt2root.o(.text+0x477):/user/hiratest/mark/working/root-unpackers/just-hira/evt2root.cpp:76: 
> undefined reference to `TFile::TFile(char const *, char const *, char 
> const *, int)'
> I changed the .rootrc and .root.mimes files for root4 and changed my 
> LD_LIBRARY_PATH for the changes.  Am I forgetting another change? 
> Thanks for the help
> Mark

This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:09 MET