[CMake] QT_WRAP_UI does not generate .h and .cxx files

Alexander Neundorf a.neundorf-work at gmx.net
Sat Dec 30 11:50:21 EST 2006


-------- Original-Nachricht --------
Datum: Tue, 19 Dec 2006 17:52:44 +0100
Von: Tim Cramer <tim.cramer at iem.rwth-aachen.de>
An: cmake at cmake.org
Betreff: [CMake] QT_WRAP_UI does not generate .h and .cxx files

> Hi all,
> 
> i have got a problem with the QT_WRAP_UI command. It does not generate 
> the required .h and .cpp files.

I guess you left the "FIND_PACKAGE(Qt)" just out ?
I don't see it in the CMakeLists.txt

> 
> 
> CMakeLists.txt:
> 
> SET(TRINITY_REAL_SRCS
> aboutdlgimpl.cc
> images.c
> DObjTree.cc
> ViewDlgData.cc
> displaymanager.cc
> displayobjsbase.cc
> gltext.cc
> qtstuff.cc
> userinterface.cc
> DObjTreeData.cc
> configmanager.cc
> displayobjmodi.cc
> displayobjshelpers.cc
> helpers.cc
> pngimage.cc
> searchpath.cc
> ViewDlg.cc
> displayglobal.cc
> displayobjs.cc
> evalmsg.cc
> introDlg.cc
> pyinterpreter.cc
> textinterface.cc
> trinitypython.c
> nview.cc
> )
> 
> SET(MOC_SRCS
> qtstuff.cc
> ViewDlg.cc
> ViewDlgData.cc
> introDlg.cc
> DObjTree.cc
> DObjTreeData.cc
> aboutdlgimpl.cc
> )
> 
> SET(TRINITY_UI
> ui_trinityabout.ui
> )
> 
> ADD_DEFINITIONS( ${QT_DEFINITIONS} )
> 
> IF(QT_MOC_EXECUTABLE)
>   SET ( QT_WRAP_CPP "YES")
> ENDIF(QT_MOC_EXECUTABLE)
> 
> SET(QT_WRAP_UI "YES")
> 
> INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
> 
> QT_WRAP_UI(trinity_ui_lib ui_trinityabout.h ui_trinityabout.cc 
> ${TRINITY_UI})
> QT_WRAP_CPP(trinity_moc_lib moc_ ${MOC_SRCS})+

The CMake man page says:

QT_WRAP_CPP(resultingLibraryName DestName 
              SourceLists ...)

So your call should look like:

QT_WRAP_CPP(_not_sure_what_the_first_arg_is_good_for 
            trinity_moc_lib moc_ 
            ${MOC_SRCS})
ADD_EXECUTABLE(iMOOSE.trinity.real 
               ${TRINITY_REAL_SRCS} 
               ${trinity_moc_lib})

This way the generated moc file end up in trinity_moc_lib and are then added to the executable.

Bye
Alex

-- 
Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! 
Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer


More information about the CMake mailing list