Install root 5.34.11 with TEvemanager on mac osx mavericks

Hi,
I just updated to the latest root (5.34.11) and compiled on the latest mac IS 10.9. Everything seems fine however all the files related to TEve are not copied to include and the libraries (libEve) are not in lib.
Should I have enabled something special when running ./configure (I don’t remember this been the case previously). I tried to look for something related in ./configure --help but couldn’t find anything.

Thanks very much,
Sebastien

[quote=“smurphy”]Hi,
I just updated to the latest root (5.34.11) and compiled on the latest mac IS 10.9. Everything seems fine however all the files related to TEve are not copied to include and the libraries (libEve) are not in lib.
Should I have enabled something special when running ./configure (I don’t remember this been the case previously). I tried to look for something related in ./configure --help but couldn’t find anything.

Thanks very much,
Sebastien[/quote]

This means that neither GL, not Eve modules were compiled and something is wrong during the configuration.
I’ve just checked my X11 ROOT (5.34.11) on OS X (10.9) - indeed, no OpenGL-related module was built.

Hi,
thanks for you answer.But what should one do then? Seems that libGL is in /opt/X11/lib.
I tried to force it
./configure macosx64 --enable-opengl --with-opengl-libdir=/opt/X11/lib/

make
But no changes (no libEve in lib/ and TEve* in include/)

Thanks,
Sebastien

[quote=“smurphy”]Hi,
thanks for you answer.But what should one do then? Seems that libGL is in /opt/X11/lib.
I tried to force it
./configure macosx64 --enable-opengl --with-opengl-libdir=/opt/X11/lib/

make
But no changes (no libEve in lib/ and TEve* in include/)

Thanks,
Sebastien[/quote]

On my mac the ‘configure’ script seems to have a bug. The library libGLU.dylib is actually found in the same directory as libGL.dylib, but … while libGL.dylib is not linked against libstdc++, and libGLU.dylib is, libGLU.dylib is considered to be not compatible. You can hack the script (it’s somewhere near the line 2931):

[quote]#check_library “libGLU libMesaGLU” “$enable_shared”
# “$keep” $opengllibdirs
openglulib=“-lGLU”
openglulibdir=“/usr/X11R6/lib”[/quote]

Note, that in my case libGL/libGLU are in /usr/X11R6/lib. If the similar “hack” can help you with your /opt/X11/lib - I have no idea (I was installing XQuartz from the scratch and I guess GL was installed as a part of XQuartz into the /usr/X11R6).

Perfect that worked! (actually I also have those libraries in /usr/X11R6/lib)
Thanks very much,
Sebastien

This issue has just been fixed in the v5-34-00-patch branch and in the master.

Cheers, Fons.

Hi,

I had the same problem as the previous user (Mac os 10.9, and root 5.34.11). Moving to root 5.34.12 has solved it but now I get a linking error in my program that uses TEveManager:
Undefined symbols for architecture x86_64:
“TEveElement::SetMainColorRGB(float, float, float)”, referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
"TEveManager::AddElement(TEveElement*, TEveElement*)", referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
"TEveManager::RegisterRedraw3D()", referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
"TEveManager::Create(bool, char const*)", referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
"TEveTriangleSet::GenerateTriangleNormals()", referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
"TEveTriangleSet::TEveTriangleSet(int, int, bool, bool)", referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
"TEveManager::GetDefaultGLViewer() const", referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
"_gEve", referenced from:
_main in PMT_hits_event_viewer-xTh0xo.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Any idea?

Thanks in advance

Ok, i see that if I include the following line in my makefile
-L $(ROOTSYS)/lib -lEve -lRGL

the problem disappears.

thanks

Berta

If you’re using root-config, there is also the --evelibs option.

Cheers,
Matevz

Thanks, I am indeed using root-config
I will update my Makefile

Berta