Bug 332337 - INSTALL file in src lists incorrect prerequisite version for qt. cannot build on RHEL6.
Summary: INSTALL file in src lists incorrect prerequisite version for qt. cannot build...
Status: RESOLVED UNMAINTAINED
Alias: None
Product: marble
Classification: Applications
Component: general (show other bugs)
Version: 1.8 (KDE 4.13)
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: marble-bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-19 21:36 UTC by Vincent Broman
Modified: 2021-03-10 03:58 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vincent Broman 2014-03-19 21:36:40 UTC
This is a building/packaging problem, not a runtime problem.
I'm unable to build marble from the latest git sources (0f57d8d...)
on the latest RHEL 6 with current updates to 2014-03.

I've added the following to CMakeLists.txt (when not on the command line)
SET( CMAKE_BUILD_TYPE Release )
SET( CMAKE_INSTALL_PREFIX /usr/local )
SET( QTONLY TRUE )

Cmake mentions not finding a bunch of optional things, but fails with the following complaint.

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.                    
Please set them or make sure they are set and tested correctly in the CMake files:                              
QT_QTDECLARATIVE_INCLUDE_DIR                                                                                    
   used as include directory in directory /usr/local/src/marble
...
QT_QTDECLARATIVE_LIBRARY
    linked by target "marblewidget" in directory /usr/local/src/marble/src/lib/marble
    linked by target "MarbleDeclarativePlugin" in directory /usr/local/src/marble/src/plugins/declarative

Now, as best as I can tell, QTDECLARATIVE was only introduced in QT 4.7 .
RHEL 6 supplies only QT 4.6.2,
while the INSTALL file in the source calls for "Qt 4.5 or newer".
I need to know what the real requirement is, and this should be documented.
Preferably the build requirements should be tested by someone
actually building marble with the minimum support required.

Vincent Broman


Reproducible: Always

Steps to Reproduce:
1.  cd /usr/local/src/marble
2.  mkdir build
3.  cd build
4.  cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DQTONLY=TRUE ..
Actual Results:  
-- The C compiler identification is GNU                                                                    
-- The CXX compiler identification is GNU                                                                  
-- Check for working C compiler: /usr/bin/gcc                                                              
-- Check for working C compiler: /usr/bin/gcc -- works                                                     
-- Detecting C compiler ABI info                                                                           
-- Detecting C compiler ABI info - done                                                                    
-- Check for working CXX compiler: /usr/bin/c++                                                            
-- Check for working CXX compiler: /usr/bin/c++ -- works                                                   
-- Detecting CXX compiler ABI info                                                                         
-- Detecting CXX compiler ABI info - done                                                                  
-- Looking for Q_WS_X11                                                                                    
-- Looking for Q_WS_X11 - found                                                                            
-- Looking for Q_WS_WIN                                                                                    
-- Looking for Q_WS_WIN - not found.                                                                       
-- Looking for Q_WS_QWS                                                                                    
-- Looking for Q_WS_QWS - not found.                                                                       
-- Looking for Q_WS_MAC                                                                                    
-- Looking for Q_WS_MAC - not found.                                                                       
-- Found Qt-Version 4.6.2                                                                                  
-- Looking for _POSIX_TIMERS                                                                               
-- Looking for _POSIX_TIMERS - found                                                                       
Qt QTWEBKIT library not found.                                                                             
-- CTest cannot determine repository type. Please set UPDATE_TYPE to 'cvs' or 'svn'. CTest update will not work.
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
-- Found Phonon: /usr/include                                                                                   
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
-- Could NOT find QextSerialPort  (missing:  QEXTSERIALPORT_INCLUDE_DIR QEXTSERIALPORT_LIBRARIES)               
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
-- Could NOT find quazip  (missing:  QUAZIP_INCLUDE_DIR QUAZIP_LIBRARIES)                                       
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
-- Could NOT find libshp  (missing:  LIBSHP_INCLUDE_DIR LIBSHP_LIBRARIES)                                       
Qt QTWEBKIT library not found.                                                                                  
-- Could NOT find libgps  (missing:  LIBGPS_INCLUDE_DIR LIBGPS_LIBRARIES)                                       
-- checking for module 'liblocation>=0.102'                                                                     
--   package 'liblocation>=0.102' not found                                                                     
-- checking for module 'QtLocation>=1.0.1'                                                                      
--   package 'QtLocation>=1.0.1' not found                                                                      
-- Could NOT find QtMobility  (missing:  QTMOBILITY_INCLUDE_DIR)                                                
-- Could NOT find QtLocation  (missing:  QTLOCATION_INCLUDE_DIR QTLOCATION_LIBRARIES)                           
-- Could NOT find libwlocate  (missing:  LIBWLOCATE_INCLUDE_DIR LIBWLOCATE_LIBRARIES)                           
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
Qt QTWEBKIT library not found.                                                                                  
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.                    
Please set them or make sure they are set and tested correctly in the CMake files:                              
QT_QTDECLARATIVE_INCLUDE_DIR                                                                                    
   used as include directory in directory /usr/local/src/marble                                                 
   used as include directory in directory /usr/local/src/marble/src                                             
   used as include directory in directory /usr/local/src/marble/src/apps                                        
   used as include directory in directory /usr/local/src/marble/src/apps/marble-ui                              
   used as include directory in directory /usr/local/src/marble/src/apps/marble-qt                              
   used as include directory in directory /usr/local/src/marble/src/apps/marble-mobile                          
   used as include directory in directory /usr/local/src/marble/src/lib/marble                                  
   used as include directory in directory /usr/local/src/marble/src/plugins                                     
   used as include directory in directory /usr/local/src/marble/src/plugins/designer                            
   used as include directory in directory /usr/local/src/marble/src/plugins/designer/marblewidget               
   used as include directory in directory /usr/local/src/marble/src/plugins/designer/latloneditwidget           
   used as include directory in directory /usr/local/src/marble/src/plugins/designer/navigator                  
   used as include directory in directory /usr/local/src/marble/src/plugins/declarative                         
   used as include directory in directory /usr/local/src/marble/src/plugins/render                              
   used as include directory in directory /usr/local/src/marble/src/plugins/render/compass                      
   used as include directory in directory /usr/local/src/marble/src/plugins/render/elevationprofilefloatitem    
   used as include directory in directory /usr/local/src/marble/src/plugins/render/gpsinfo                      
   used as include directory in directory /usr/local/src/marble/src/plugins/render/license                      
   used as include directory in directory /usr/local/src/marble/src/plugins/render/mapscale                     
   used as include directory in directory /usr/local/src/marble/src/plugins/render/navigation                   
   used as include directory in directory /usr/local/src/marble/src/plugins/render/overviewmap                  
   used as include directory in directory /usr/local/src/marble/src/plugins/render/progress                     
   used as include directory in directory /usr/local/src/marble/src/plugins/render/routing                      
   used as include directory in directory /usr/local/src/marble/src/plugins/render/speedometer                  
   used as include directory in directory /usr/local/src/marble/src/plugins/render/annotate                     
   used as include directory in directory /usr/local/src/marble/src/plugins/render/crosshairs                   
   used as include directory in directory /usr/local/src/marble/src/plugins/render/elevationprofilemarker       
   used as include directory in directory /usr/local/src/marble/src/plugins/render/graticule                    
   used as include directory in directory /usr/local/src/marble/src/plugins/render/measure                      
   used as include directory in directory /usr/local/src/marble/src/plugins/render/positionmarker               
   used as include directory in directory /usr/local/src/marble/src/plugins/render/atmosphere                   
   used as include directory in directory /usr/local/src/marble/src/plugins/render/stars                        
   used as include directory in directory /usr/local/src/marble/src/plugins/render/sun                          
   used as include directory in directory /usr/local/src/marble/src/plugins/render/earthquake                   
   used as include directory in directory /usr/local/src/marble/src/plugins/render/foursquare                   
   used as include directory in directory /usr/local/src/marble/src/plugins/render/opencachingcom               
   used as include directory in directory /usr/local/src/marble/src/plugins/render/opendesktop                  
   used as include directory in directory /usr/local/src/marble/src/plugins/render/photo                        
   used as include directory in directory /usr/local/src/marble/src/plugins/render/postalcode                   
   used as include directory in directory /usr/local/src/marble/src/plugins/render/satellites                   
   used as include directory in directory /usr/local/src/marble/src/plugins/render/wikipedia                    
   used as include directory in directory /usr/local/src/marble/src/plugins/render/weather                      
   used as include directory in directory /usr/local/src/marble/src/plugins/render/inhibit-screensaver          
   used as include directory in directory /usr/local/src/marble/src/plugins/render/aprs                         
   used as include directory in directory /usr/local/src/marble/src/plugins/runner                              
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/hostip                       
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/latlon                       
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/local-osm-search             
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/localdatabase                
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/nominatim-search             
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/nominatim-reversegeocoding
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/gosmore-reversegeocoding
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/gosmore-routing
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/mapquest
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/monav
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/openrouteservice
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/open-source-routing-machine
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/routino
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/yours
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/cache
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/gpx
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/json
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/kml
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/osm
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/pn2
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/pnt
   used as include directory in directory /usr/local/src/marble/src/plugins/runner/log
   used as include directory in directory /usr/local/src/marble/src/plugins/templates
   used as include directory in directory /usr/local/src/marble/src/plugins/positionprovider
   used as include directory in directory /usr/local/src/marble/src/plugins/positionprovider/flightgear
   used as include directory in directory /usr/local/src/marble/src/plugins/positionprovider/routesimulation
   used as include directory in directory /usr/local/src/marble/src/plugins/positionprovider/placemark
   used as include directory in directory /usr/local/src/marble/src/bindings
   used as include directory in directory /usr/local/src/marble/data
   used as include directory in directory /usr/local/src/marble/data/lang
   used as include directory in directory /usr/local/src/marble/tests
QT_QTDECLARATIVE_LIBRARY
    linked by target "marblewidget" in directory /usr/local/src/marble/src/lib/marble
    linked by target "MarbleDeclarativePlugin" in directory /usr/local/src/marble/src/plugins/declarative

-- Configuring incomplete, errors occurred!


Expected Results:  
similar without the configuration error messages
Comment 1 Dennis Nienhüser 2014-03-20 19:15:35 UTC
master and Marble 1.7 (= the KDE/4.13 branch) require Qt 4.7 or higher. See http://mail.kde.org/pipermail/marble-devel/2013-July/004344.html

Older branches likely work with Qt 4.6, or are easy to fix at least. I'd be interested to fix the KDE/4.12 branch to compile with Qt 4.6, but I have no such Qt version around to look into it. Patches are welcome.

QTDECLARATIVE was an optional dependency some time ago, the QML stuff should just be excluded from the build if it's not found.
Comment 2 Dennis Nienhüser 2014-03-20 19:30:26 UTC
Git commit e2711565c63063f29c4ad11806da879fa35fc8a3 by Dennis Nienhüser.
Committed on 20/03/2014 at 19:11.
Pushed by nienhueser into branch 'master'.

Correct some of the outdated information

M  +11   -12   INSTALL

http://commits.kde.org/marble/e2711565c63063f29c4ad11806da879fa35fc8a3
Comment 3 Vincent Broman 2014-03-24 18:41:02 UTC
If QTDECLARATIVE is an optional dependency,
then it seems to me that cmake should turn it off
when it finds QTDECLARATIVE missing, right?

I have tried out a kdeedu-marble-4.3,
which made me desire the latest and greatest.
Any quick pointer how to exclude QTDECLARATIVE
manually in order to compile 4.12?
Comment 4 Dennis Nienhüser 2014-03-26 13:48:28 UTC
The declarative plugin and the marble-touch application should be disabled when QTDECLARATIVE is not found. It should be simple to disable them manually in the respective CMakeLists.txt that adds them.
There may be a dependency in AbstractDataPlugin.{h,cpp} as well which would need some #ifdef switches to disable QTDECLARATIVE, which is a bit more complicated to make optional (still possible though).
Comment 5 Vincent Broman 2014-04-02 00:22:50 UTC
I tried editing the CMakeLists.txt files to avoid QTDECLARATIVE
and ifdeffing out the call in AbstractDataPlugin.* that needs it,
so that I succeeded in getting cmake to complete.
Unfortunately, when I ran make, it failed when the compilation hit the
first of many references to QWebView, which was missing in 4.6
because it seems to have been introduced in Qt4.7 .

Unless someone has more suggestions, I'll give up on RHEL6 marble.
Comment 6 Dennis Nienhüser 2014-04-02 20:20:27 UTC
QWebView is part of QtWebKit which was introduced earlier than Qt 4.6. Please check that it is indeed installed.
Comment 7 Justin Zobel 2021-03-09 22:51:30 UTC
Thank you for the bug report.

As this report hasn't seen any changes in 5 years or more, we ask if you can please confirm that the issue still persists.

If this bug is no longer persisting or relevant please change the status to resolved.
Comment 8 Vincent Broman 2021-03-10 03:58:56 UTC
RHEL 6 is ancient and I have no idea whether the bug has since been fixed.
I mark it as RESOLVED only in the sense that I have lost interest.