Opened 12 years ago

Closed 11 years ago

#36189 closed defect (fixed)

Failure installing ROOT with qt_mac variant

Reported by: angelo.graziosi@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc: mattiafrancescomoro@…, cjones051073 (Chris Jones), michaelld (Michael Dickens)
Port: ROOT

Description

I have tried to install ROOT adding the qt_mac variant as I had some time ago.. I did

sudo port selfupdate

sudo port outdated
No installed ports are outdated.

sudo port -f uninstall root

sudo port install root +avahi +fftw3 +fitsio +gcc47 +ldap +mysql +odbc +postgresql92 +pythia +python32 +qt_mac +ruby

but it fails.

Removing the qt_mac variant works, i.e.

sudo port install root +avahi +fftw3 +fitsio +gcc47 +ldap +mysql +odbc +postgresql92 +pythia +python32 +ruby

works fine.

Anyway, I would prefer to install ROOT also with qt_mac variant..

Attached the main log. I would ask if this is the result of recent the changes (libstdcxx etc.) in GCC.

Ciao, Angelo.

Attachments (1)

root-main.log.bz2 (109.8 KB) - added by angelo.graziosi@… 12 years ago.
main log

Download all attachments as: .zip

Change History (28)

Changed 12 years ago by angelo.graziosi@…

Attachment: root-main.log.bz2 added

main log

comment:1 in reply to:  description Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… removed
Keywords: qt_mac ROOT removed

Replying to angelo.graziosi@…:

Attached the main log.

The error it shows is:

Undefined symbols for architecture x86_64:

followed by 2500 lines of errors, listing 665 symbols that it cannot find, which look like they could all be related to Qt, unsurprisingly. Perhaps some "-l" flags that would add the Qt libraries are missing in the build system.

I would ask if this is the result of recent the changes (libstdcxx etc.) in GCC.

I don't believe so. It's also not my port, so I'll un-Cc myself from this ticket.

comment:2 Changed 12 years ago by cjones051073 (Chris Jones)

I re-enabled the qt4_mac variant as courtesy to those for whom it works. It has never worked well for me and frankly tI don't have the time or inclination to work on it.

I can confirm though the combination of variants "+avahi +fftw3 +fitsio +gcc47 +ldap +mysql +odbc +postgresql92 +pythia +python32 +qt_mac +ruby" doesn't work for me either, with OS X 10.8.

ROOT has a lot of different variants. Combine that with the different OS X and Xcode versions, its impossible to try them all.

I'll bear this report in mind, but if you want this particular combination of variants to work, the best way will be to fix it yourself...

comment:3 Changed 12 years ago by cjones051073 (Chris Jones)

I did try one thing, which is to build ROOT using the qt_mac variant, but without the gcc47 variant. That works fine, so my suspicion is the problem is not with ROOT, but with the qt4-mac which is not built in a way compatible with the gcc47 (or other gcc?) compilers.

However, as I said in my other post, I do not have the time or inclination to follow up on this. I'll leave that to others.

comment:4 Changed 12 years ago by cjones051073 (Chris Jones)

I have tried building root, on OS X 10.8, with all the gcc variants 4.5, 4.6, 4,7 and 4.8. All fail. Based on this I am tempted to just conflict the qt_mac with the gccXY variants. However, before I do this I would appreciate some tests from those still running the older OS X 10.7 (or even older) versions (which I no longer have access to).

  • Does the qt_mac variant build OK, without using any of the gccXY variants ?
  • Does the qt_mac variant fail with all the gccXY variants.

If the answer to the above is true, I will just mark the qt_mac variant as in conflict with all the gccXY variants.

Chris

comment:5 in reply to:  4 Changed 12 years ago by angelo.graziosi@…

Is there a way to do all those tests without (forcing) uninstall my current installation of ROOT? For example doind all in working directory that I can delete at the end of tests...

Ciao,
Angelo.

Replying to jonesc@…:

I have tried building root, on OS X 10.8, with all the gcc variants 4.5, 4.6, 4,7 and 4.8. All fail. Based on this I am tempted to just conflict the qt_mac with the gccXY variants. However, before I do this I would appreciate some tests from those still running the older OS X 10.7 (or even older) versions (which I no longer have access to).

  • Does the qt_mac variant build OK, without using any of the gccXY variants ?
  • Does the qt_mac variant fail with all the gccXY variants.

If the answer to the above is true, I will just mark the qt_mac variant as in conflict with all the gccXY variants.

Chris

comment:6 Changed 12 years ago by cjones051073 (Chris Jones)

Not that I know. I just uninstall then reinstall etc.

comment:7 in reply to:  4 Changed 12 years ago by angelo.graziosi@…

Replying to jonesc@…:

I have tried building root, on OS X 10.8, with all the gcc variants 4.5, 4.6, 4,7 and 4.8. All fail. Based on this I am tempted to just conflict the qt_mac

In the past, I had installed:

qt4-mac @4.7.4_1+quartz (active)
  root @5.32.00_1+avahi+clarens+fftw3+fitsio+gcc45+graphviz+gsl+ldap+minuit2+mysql+odbc+opengl+postgresql90+pythia+python32+qt_mac+roofit+ruby+soversion+ssl+tmva+xml (active)

and it worked fine... So, at least with gcc45, it worked...

Now I have qt4-mac installed as

qt4-mac @4.8.2_3+framework+odbc+quartz (active)

I would ask if they are the added variants (+framework+odbc) to do the difference... or the 4.8 version of qt4-mac..

At the moment I can't do any test.

Ciao, Angelo.

with the gccXY variants. However, before I do this I would appreciate some tests from those still running the older OS X 10.7 (or even older) versions > (which I no longer have access to).

  • Does the qt_mac variant build OK, without using any of the gccXY variants ?
  • Does the qt_mac variant fail with all the gccXY variants.

If the answer to the above is true, I will just mark the qt_mac variant as in conflict with all the gccXY variants.

Chris

comment:8 Changed 12 years ago by angelo.graziosi@…

OK, today I have upgraded:

$ sudo port selfupdate
[...]
$ sudo port outdated
The following installed ports are outdated:
djview                         4.9_0 < 4.9_1             
gdk-pixbuf2                    2.26.3_0 < 2.26.4_0       
py27-nose                      1.1.2_2 < 1.2.1_0         
qt4-mac                        4.8.2_3 < 4.8.3_0         
qt4-mac-mysql55-plugin         4.8.2_0 < 4.8.3_0

then I did (to avoid the conflict with +framework variant)

sudo port -f uninstall qt4-mac
sudo port -s install qt4-mac +odbc

then installer ROOT

sudo port -f uninstall root
sudo port install root +avahi +fftw3 +fitsio +gcc47 +ldap +mysql +odbc +postgresql92 +pythia +python32 +qt_mac +ruby

and it was installed.

But... the ROOT tests and tutorials which allow the OpenGL 3D viewer don't work if one enables that viewer. They hang and I was constrained to force the quit from X server (XQuarz 2.6.4).

So, I reinstalled ROOT without +qt_mac variant..

Ciao, Angelo.

comment:9 Changed 12 years ago by michaelld (Michael Dickens)

Cc: michaelld@… added

Cc Me!

comment:10 Changed 12 years ago by michaelld (Michael Dickens)

The following worked fine for me: "root +gcc47 +qt_mac +python27 +fftw3 +fitsio +ruby +universal". qt4_mac is at 4.8.3_0. Comparing log files (yours and mine), it looks like yours isn't putting "-L/opt/local/lib -lQtCore -lQtGui -lQt3Support" into the linking of "libQtGSI.5.so". During configuration, your log shows

:info:configure Checking for QtCore/qglobal.h ... /opt/local/include
:info:configure Checking for 4.3.0 <= Qt version < 5.0.0  ... 4.8.2
:info:configure Checking for libQtCore, QtCore, QtCore4, or QtCore4 ... no
:info:configure Checking for libQtGui, QtGui, QtGui4, or QtGui4 ... no
:info:configure Checking for libQt3Support, Qt3Support, Qt3Support4, or Qt3Support4 ... no

There is a file "config.log" at the top-leve build directory. It should shed some light on why Qt isn't being found. Track down that file and either attach it to this ticket or the relevant parts of it, and we'll go from there.

comment:11 Changed 12 years ago by michaelld (Michael Dickens)

Forgot to mention: It looks like you still have Qt 4.8.2 installed. Please "sudo port selfupdate" and then upgrade qt4-mac to 4.8.3_0. I think that will solve the issue unless there is some conflicting Qt installed that root's configure script is finding.

comment:12 Changed 12 years ago by michaelld (Michael Dickens)

Or, reading from your last post, are you saying that root now builds fine but just doesn't work as expected? My comment about Qt 4.8.2 was based on the log file you attached, which is probably not relevant now (yes?).

comment:13 in reply to:  12 Changed 12 years ago by angelo.graziosi@…

As you can see from comment 8, ROOT builds with qt_mac (4.8.3) but there is some more problems...

Today I did a selfupdate etc. and there were upgrades for gcc47, mesa, ROOT.

Now both with qt_mac variant and without, ROOT has problems when the OpenGL 3D Viewer is activated. For example you can try this:

$ mkdir work
$ cd work
$ rsync -av /opt/local/share/root/test .
$ cd test/RootShower/
$ make all clean
$ ./RootShower

At this point you should click on "Start New Event" and then click on the button "Open 3D Viewer": here often RootShower hangs.

Also the X server (XQurz 2.6.4) seems to have problems: I have to force its quitting.

Ciao, Angelo.

Replying to michaelld@…:

Or, reading from your last post, are you saying that root now builds fine but just doesn't work as expected? My comment about Qt 4.8.2 was based on the log file you attached, which is probably not relevant now (yes?).

comment:14 Changed 12 years ago by cjones051073 (Chris Jones)

What compiler are you using to build root, with the qt4-mac variant enabled ? You should not use any of the gcc variants at the same time, as I suspect this is quite likely to lead to conflicts due to root an qt4 being built with different compilers.

If this is the problem, Maybe we should explicitly make the gccXY variants conflict with qt4-mac, to avoid this...

comment:15 in reply to:  14 Changed 12 years ago by angelo.graziosi@…

I did this:

sudo port install root +avahi +fftw3 +fitsio +gcc47 +ldap +mysql +odbc +postgresql92 +pythia +python32 +qt_mac +ruby

i.e. with gcc47. But as I wrote in comment #13, now the OpenGL 3D viewer not work, even if I remove the qt_mac variant,

sudo port install root +avahi +fftw3 +fitsio +gcc47 +ldap +mysql +odbc +postgresql92 +pythia +python32 +ruby

So I did another try with cocoa variant,

sudo port install root +avahi +cocoa +fftw3 +fitsio +ldap +mysql +odbc +postgresql92 +pythia +python32 +qt_mac +ruby

this should use clang 4.1 in /usr/bin (here is on Lion 10.7.5 and Xcode 4.5).

It installs, but never work. Whatever I try I got:

$ ./RootShower 
Error in <TMacOSXSystem::DynamicPathName>: RGL[.so | .dll | .dylib | .sl | .dl | .a] does not exist in .:/opt/local/lib/root::/opt/local/lib/root/cint/cint/stl
Error in <TMacOSXSystem::DynamicPathName>: ASImage[.so | .dll | .dylib | .sl | .dl | .a] does not exist in .:/opt/local/lib/root::/opt/local/lib/root/cint/cint/stl
[...]

or, with demos,

root [0] .x demos.C
root [1] Error in <TMacOSXSystem::DynamicPathName>: ASImage[.so | .dll | .dylib | .sl | .dl | .a] does not exist in .:/opt/local/lib/root::/opt/local/lib/root/cint/cint/stl
Error in <TMacOSXSystem::DynamicPathName>: ASImage[.so | .dll | .dylib | .sl | .dl | .a] does not exist in .:/opt/local/lib/root::/opt/local/lib/root/cint/cint/stl
Error in <TGHScrollBar::TGHScrollBar>: arrow_*.xpm not found
Error in <TMacOSXSystem::DynamicPathName>: ASImage[.so | .dll | .dylib | .sl | .dl | .a] does not exist in .:/opt/local/lib/root::/opt/local/lib/root/cint/cint/stl

It seems I can start only ROOT...

What I am missing here?

Angelo

Replying to jonesc@…:

What compiler are you using to build root, with the qt4-mac variant enabled ? You should not use any of the gcc variants at the same time, as I suspect this is quite likely to lead to conflicts due to root an qt4 being built with different compilers.

If this is the problem, Maybe we should explicitly make the gccXY variants conflict with qt4-mac, to avoid this...

comment:16 Changed 12 years ago by cjones051073 (Chris Jones)

The cocoa variant is experimental. Please try without it. So no gcc variant and no cocoa.

It also does not help with debugging that you seem to insist on using all possible additional variants. Do you really need them all ?

Please first try with only the qt_mac variant, and if that works then try adding back the others.

comment:17 in reply to:  16 Changed 12 years ago by angelo.graziosi@…

I have tried something better:

$ sudo port -f uninstall root
$ sudo port --no-rev-upgrade install root

$ port installed root
The following ports are currently installed:
  root @5.34.02_0+graphviz+gsl+minuit2+opengl+roofit+soversion+ssl+tmva+xml (active)

Now ROOT, without qt_mac, without gcc, without cocoa.. has PROBLEMS with the OpenGL 3D Viewer (and the X server?). See my comment #13.

With ROOT 5.34.01, I have seen these PROBLEMS only with the QT_MAC variant added. Now, with 5.34.02, it occurs in any case...

Angelo

Replying to jonesc@…:

The cocoa variant is experimental. Please try without it. So no gcc variant and no cocoa.

It also does not help with debugging that you seem to insist on using all possible additional variants. Do you really need them all ?

Please first try with only the qt_mac variant, and if that works then try adding back the others.

comment:18 Changed 12 years ago by cjones051073 (Chris Jones)

I know from the XQuartz mailing lists that the current release, 2.7.3, has problems with OpenGL after the recent OS X updates to 10.8.2 and 10.7.<whatever the new one is>. A release candidate version 2.7.4_rc1 has been available which is supposed to fix this.

Please make sure you are using this rc1 version from

http://xquartz.macosforge.org/trac/wiki

and try again.

comment:19 Changed 12 years ago by cjones051073 (Chris Jones)

I just tried to run the 'RootShower' test from comment 13, and for it it runs just fine.

I'm running OS X 10.8.2 with Xcode 4.5 and XQuartz 2.7.3.

My root installation is

Chris-Jones-Macbook-Pro ~/test/test/RootShower > port installed | grep root
  root @5.34.02_0+avahi+fftw3+fitsio+graphviz+gsl+minuit2+opengl+pythia+python27+roofit+ssl+tmva+xml (active)

So I am afraid I cannot reproduce your problem.

cheers Chris

comment:20 Changed 12 years ago by michaelld (Michael Dickens)

RootShower works for me as well. Same setup as Chris except XQuarts 2.7.4_rc1.I do not get a "Open 3D Viewer" button, but I do see "3D View" under the Event menu. Selecting this brings up another window ("ROOT's GL viewer") that allows me to do stuff there. Pretty cool. "port installed root" returns:

root @5.34.02_0+fftw3+fitsio+gcc47+graphviz+gsl+minuit2+opengl+python27+qt_mac+roofit+ruby+soversion+ssl+tmva+xml

comment:21 Changed 12 years ago by cjones051073 (Chris Jones)

Actually... I have to take back my claim it works for me. I forgot to do the part "Click on the 3D viewer". If I do that, I get the hang up..

will upgrade to the rc1 candidate, and see if that is OK....

cheers Chris

comment:22 Changed 12 years ago by cjones051073 (Chris Jones)

I have updated to the 2.7.4_rc1 XQuartz version, and I can confirm that this fixes the issue with the 3D viewer for me (which for reference is under Event -> 3D View).

So this issue at least is fixed in this updated.

Just to address an issue Angelo sent me in private, I have no issue with this XQuartx version starting automatically when required.

cheers Chris

comment:23 in reply to:  22 Changed 12 years ago by angelo.graziosi@…

I can confirm that the pair

$  port installed root
The following ports are currently installed:
  root @5.34.02_0+avahi+fftw3+fitsio+gcc47+graphviz+gsl+ldap+minuit2+mysql+odbc+opengl+postgresql92+pythia+python32+qt_mac+roofit+ruby+soversion+ssl+tmva+xml (active)

and XQuartz-2.7.4_rc1 seems to work with the OpenGL viewer.

As I explained to Chris, my only issue now is that I have to start manually the X server after the boot or a reboot. Then I can also quit X11 because the next time an application requests it, it starts...

This is a little annoying... I have opened a ticket on the XQuartz wiki...

Here is on Lion 10.7.5 and Xcode 4.5.

Ciao, Angelo.

Replying to jonesc@…:

I have updated to the 2.7.4_rc1 XQuartz version, and I can confirm that this fixes the issue with the 3D viewer for me (which for reference is under Event -> 3D View).

So this issue at least is fixed in this updated.

Just to address an issue Angelo sent me in private, I have no issue with this XQuartx version starting automatically when required.

cheers Chris

comment:24 Changed 11 years ago by jmroot (Joshua Root)

Cc: mattiafrancescomoro@… added

comment:25 Changed 11 years ago by angelo.graziosi@…

This ticket should be closed. Now things work better...

Chris, what do you think?

Ciao, Angelo.

comment:26 Changed 11 years ago by cjones051073 (Chris Jones)

Yes, please close this ;)

comment:27 Changed 11 years ago by michaelld (Michael Dickens)

Resolution: fixed
Status: newclosed

Done :)

Note: See TracTickets for help on using tickets.