Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Qt4 won't compile with CMake

I'm now under Linux with KDevelop for C++ and I want to compile a Qt4 application, but when I do, it gives me the following error :

I compile with:

cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Debug /home/myname/projects/First Qt projet/

Those are the errors:

-- Configuring incomplete, errors occurred!
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:97 (MESSAGE):
  Could NOT find Qt4 (missing: QT_QMAKE_EXECUTABLE QT_MOC_EXECUTABLE
  QT_RCC_EXECUTABLE QT_UIC_EXECUTABLE QT_INCLUDE_DIR QT_LIBRARY_DIR
  QT_QTCORE_LIBRARY)
Call Stack (most recent call first):
  /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:288 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-2.8/Modules/FindQt4.cmake:1200 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMakeLists.txt:3 (find_package)

What should I do ?

like image 303
GmodCake Avatar asked Mar 09 '13 17:03

GmodCake


2 Answers

sudo apt-get install libqt4-core libqt4-dev libqt4-gui qt4-dev-tools

This should install qt4 for you in: /usr/lib64/qt... from there cmake should be able to pick up the location of qt for you.

You can also use that Ubuntu package manager thingy if command line isn't your style.

like image 192
Alex Avatar answered Sep 22 '22 15:09

Alex


Not sure if this will help anyone, but for Fedora, i had the following issue:

CMake Error at /usr/share/cmake/Modules/FindQt4.cmake:1386 (message): Found unsuitable Qt version "" from NOTFOUND, this code requires Qt 4.x Call Stack (most recent call first): bgrive/CMakeLists.txt:3 (find_package)

After stepping through FindQt4.cmake i found this:

if (NOT QT_VERSION_MAJOR EQUAL 4)
    set(VERSION_MSG "Found unsuitable Qt version \"${QTVERSION}\" from ${QT_QMAKE_EXECUTABLE}")
    set(QT4_FOUND FALSE)
    if(Qt4_FIND_REQUIRED)
       message( FATAL_ERROR "${VERSION_MSG}, this code requires Qt 4.x")
    else()
      if(NOT Qt4_FIND_QUIETLY)
         message( STATUS    "${VERSION_MSG}")
      endif()
    endif()
else()
  FIND_PACKAGE_HANDLE_STANDARD_ARGS(Qt4 FOUND_VAR Qt4_FOUND
    REQUIRED_VARS ${_QT4_FOUND_REQUIRED_VARS}
    VERSION_VAR QTVERSION
    )
endif()

I know i have qt 4I solved this by simply doing:

sudo yum install qt-devel
like image 31
robster_guy Avatar answered Sep 25 '22 15:09

robster_guy