Problem 1095 - Geant4.9.3 Configure, Snow leopard and Qt4.6
Summary: Geant4.9.3 Configure, Snow leopard and Qt4.6
Status: CLOSED FIXED
Alias: None
Product: Bugzilla
Classification: Unclassified
Component: general (show other problems)
Version: other
Hardware: Other Mac OS X
: P5 major
Assignee: Ben Morgan
URL:
Depends on:
Blocks:
 
Reported: 2010-01-07 15:32 CET by garnier
Modified: 2018-05-08 14:49 CEST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this problem.
Description garnier 2010-01-07 15:32:04 CET
from (Olivier Dadoun)

Hello,

I am trying to install geant4.9.3 on my mac os x under snow leopard. During the QT phase detection (the ./Configure -build phase) I have this error (my Qt paht is good)

checking for qglobal.h... /usr/local/Qt4.6-64/include/QtCore/qglobal.h
checking Qt major version... 4
checking for QtGui headers... yes
checking for QtOpenGL headers... yes
checking for QtCore library... no
checking for moc... /usr/local/Qt4.6-64/bin/moc
Checking /usr/local/Qt4.6-64/bin/moc major version is 4... yes
Autodetection failed to locate Qt3 or Qt4 in on your system.
Please enter the path to your Qt3 OR Qt4 install (i.e. if Qt4 is installed
in PATH/include/QT, PATH/include or PATH/include/qt4, enter PATH),
or type '-' to CANCEL the build of the Qt UI module.
does anyone have an idea (Laurent for example :) ) ?
by advance thank you

cheers

Olivier
Comment 1 garnier 2010-01-07 15:32:55 CET
Hi,

There is two problems...

First, Configure step has a problem holding "by hand" Qt path on mac OSX. 
In order to do that, you have to patch the Configure file. Around line 2500,
after :
             if test "x\$g4_qt_lib" = "x" ; then
                # We might be on Windows...
                g4_qt_lib="\`ls \$g4_qt_lib_dir/QtCore4.lib 2> /dev/null | sed -n 1p | sed s@\$g4_qt_lib_dir/@@\`"
            fi

Add : 
            if test "x\$g4_qt_lib" = "x" ; then
                # We might be on Mac...
                g4_qt_lib="\`ls \$g4_qt_lib_dir/QtCore* 2> /dev/null | sed -n 1p | sed s@\$g4_qt_lib_dir/@@ |  sed s@[.].*@@\`"
            fi

But that will not solve your problem... :( Because what you will have is a Qt Framework. In order to add your own Framework path, you add to patch a second time Configure, around line 2290 after :
        g4_qt_include_path_list="
            \`ls -dr /Library/Frameworks/QtCore.framework/Headers 2>/dev/null\` 

Add path to YOUR QtCore Framework installation :
            \`ls -dr /usr/local/Qt4.6-64bits....../QtCore.framework/Headers 2>/dev/null\` 

Before Configure file is patch, Anyone has a better solution ?

Laurent
Comment 2 Ben Morgan 2010-01-09 14:48:20 CET
Hi Olivier,

It's likely to be due to the directory structure where the Qt libraries are installed. Could you please post here the list of directories under /usr/local/Qt4.6-64, and especially where the QtCore library is located?

Also, how did you install Qt? Via a pre-packaged SDK or build/install yourself?

Cheers,

Ben.
Comment 3 dadoun 2010-01-11 10:02:04 CET
Hi Ben,

I reinstall Qt (using build/install way) without defining  --prefix option.
So Qt install by default everything in /usr/local/Trolltech. 
Even with that the geant4 Configure file is not correct,
the Laurent's modifications is needed.
cheers
Olivier
(In reply to comment #2)
> Hi Olivier,
> 
> It's likely to be due to the directory structure where the Qt libraries are
> installed. Could you please post here the list of directories under
> /usr/local/Qt4.6-64, and especially where the QtCore library is located?
> 
> Also, how did you install Qt? Via a pre-packaged SDK or build/install yourself?
> 
> Cheers,
> 
> Ben.
Comment 4 Ben Morgan 2010-01-11 12:12:10 CET
Hi Olivier,

O.k., and could you still post the directory structure *especially* where the libraries are located. I *need* this to be able to fix Configure...

I'm a little confused though (probably because I'm not a Qt/Mac expert) - you said that everything was installed in /usr/local/Trolltech, but things looked like they ended up in /usr/local/Qt4.6-64. Is that a softlink or something else?

Cheers,

Ben.
Comment 5 dadoun 2010-01-11 16:26:57 CET
sorry there is a misunderstanding. 
This location /usr/local/Qt4.6-64 was my old QT installation .
Now everything is installed /usr/local/Trolltech/Qt-4.6.0
where those folders are presents:
 bin		doc		include		mkspecs		plugins		translations
demos		examples	lib		phrasebooks	q3porting.xml

Concerning the lib folder:

Qt3Support.framework		QtOpenGL.framework		QtXmlPatterns.la
Qt3Support.la			QtOpenGL.la			QtXmlPatterns_debug.la
Qt3Support_debug.la		QtOpenGL_debug.la		QtXml_debug.la
QtAssistant.framework		QtScript.framework		libQtCLucene.4.6.0.dylib
QtCore.framework		QtScript.la			libQtCLucene.4.6.dylib
QtCore.la			QtScriptTools.framework		libQtCLucene.4.dylib
QtCore_debug.la			QtScriptTools.la		libQtCLucene.dylib
QtDesigner.framework		QtScriptTools_debug.la		libQtCLucene.la
QtDesignerComponents.framework	QtScript_debug.la		libQtCLucene.prl
QtGui.framework			QtSql.framework			libQtCLucene_debug.4.6.0.dylib
QtGui.la			QtSql.la			libQtCLucene_debug.4.6.dylib
QtGui_debug.la			QtSql_debug.la			libQtCLucene_debug.4.dylib
QtHelp.framework		QtSvg.framework			libQtCLucene_debug.dylib
QtHelp.la			QtSvg.la			libQtCLucene_debug.la
QtHelp_debug.la			QtSvg_debug.la			libQtCLucene_debug.prl
QtMultimedia.framework		QtTest.framework		libQtUiTools.a
QtMultimedia.la			QtTest.la			libQtUiTools.prl
QtMultimedia_debug.la		QtTest_debug.la			libQtUiTools_debug.a
QtNetwork.framework		QtXml.framework			libQtUiTools_debug.prl
QtNetwork.la			QtXml.la			pkgconfig
QtNetwork_debug.la		QtXmlPatterns.framework

those informations are enough ?
cheers
olivier
(In reply to comment #4)
> Hi Olivier,
> 
> O.k., and could you still post the directory structure *especially* where the
> libraries are located. I *need* this to be able to fix Configure...
> 
> I'm a little confused though (probably because I'm not a Qt/Mac expert) - you
> said that everything was installed in /usr/local/Trolltech, but things looked
> like they ended up in /usr/local/Qt4.6-64. Is that a softlink or something
> else?
> 
> Cheers,
> 
> Ben.
Comment 6 Ben Morgan 2010-01-11 16:49:11 CET
Thanks Olivier, that's great! One more thing - under the lib/NAME.framework directories, e.g. lib/QtCore.framework, do you have Headers subdirectories, i.e. lib/QtCore.framework/Headers?

That being the case, do those Headers directories contain actual headers, in particular do you have lib/QtCore.framework/Headers/qglobal.h?

Cheers,

Ben.
Comment 7 dadoun 2010-01-11 17:06:02 CET
HEre all the headers I have :
./Qt3Support.framework/Headers
./Qt3Support.framework/Versions/4/Headers
./QtAssistant.framework/Headers
./QtAssistant.framework/Versions/4/Headers
./QtCore.framework/Headers
./QtCore.framework/Versions/4/Headers
./QtDesigner.framework/Headers
./QtDesigner.framework/Versions/4/Headers
./QtGui.framework/Headers
./QtGui.framework/Versions/4/Headers
./QtHelp.framework/Headers
./QtHelp.framework/Versions/4/Headers
./QtMultimedia.framework/Headers
./QtMultimedia.framework/Versions/4/Headers
./QtNetwork.framework/Headers
./QtNetwork.framework/Versions/4/Headers
./QtOpenGL.framework/Headers
./QtOpenGL.framework/Versions/4/Headers
./QtScript.framework/Headers
./QtScript.framework/Versions/4/Headers
./QtScriptTools.framework/Headers
./QtScriptTools.framework/Versions/4/Headers
./QtSql.framework/Headers
./QtSql.framework/Versions/4/Headers
./QtSvg.framework/Headers
./QtSvg.framework/Versions/4/Headers
./QtTest.framework/Headers
./QtTest.framework/Versions/4/Headers
./QtXml.framework/Headers
./QtXml.framework/Versions/4/Headers
./QtXmlPatterns.framework/Headers
./QtXmlPatterns.framework/Versions/4/Headers

qglobal.h is not present in 
lib/QtCore.framework/Headers/ but in 

./QtCore.framework/Versions/4/Headers/ folder.

cheers
Olivier



(In reply to comment #6)
> Thanks Olivier, that's great! One more thing - under the lib/NAME.framework
> directories, e.g. lib/QtCore.framework, do you have Headers subdirectories,
> i.e. lib/QtCore.framework/Headers?
> 
> That being the case, do those Headers directories contain actual headers, in
> particular do you have lib/QtCore.framework/Headers/qglobal.h?
> 
> Cheers,
> 
> Ben.
Comment 8 Ben Morgan 2010-04-21 12:19:57 CEST
A fix for this is now in CVS (apologies for not updating earlier). It has been tested on a Qt4 Framework-type installation in /opt/local on Mac. I'm therefore marking this bug as RESOLVED FIXED, but please re-open if problems persist.

Cheers,

Ben.