2013-03-09 77 views
6
編譯

我現在的Linux與KDevelop的對C++下,我想編譯Qt4的應用程序,但是當我做,它給了我下面的錯誤:的Qt4不會CMake的

我編譯:

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

這些都是錯誤的:

-- 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) 

我該怎麼辦?

+0

它無法找到您的QT4安裝。它通常位於/usr/lib/qt4.* – Alex 2013-03-09 18:00:50

+0

如何安裝它? – GmodCake 2013-03-09 18:03:30

+0

你在使用什麼操作系統? – Alex 2013-03-09 19:12:40

回答

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

這應該爲你安裝QT4:在/ usr/lib64下/ QT ...從那裏cmake應該能夠拿起QT的位置給你。

如果命令行不是你的風格,你也可以使用Ubuntu軟件包管理器。

+0

(丟失軟件更新的鬼): 不要uuuuusssseee thhheeee paaaaccckaaage maaannnager GModCake ... Youuuuu'll ruuun deepppreeecatttedd cooodddeee ... – Freestyle076 2016-09-21 19:11:53

+0

@ Freestyle076 - 你是在暗示不要使用apt-get ?此外,這個答案是在3年前,所以它的日期並不奇怪? – Alex 2016-09-21 19:17:49

5

不知道這是否會幫助任何人,但對於Fedora的,我有以下問題:

在/usr/share/cmake/Modules/FindQt4.cmake:1386(消息)

CMake的錯誤: 發現不合適的Qt版本 「」 從NOTFOUND,該代碼需要Qt 4.x的 調用堆棧(最近一次調用在前): bgrive /的CMakeLists.txt:3(find_package)

通過FindQt4.cmake我步進後發現這個:

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() 

我知道我有QT 4I通過簡單地做解決了這個:

sudo yum install qt-devel