Quoting Marcin Gil <[EMAIL PROTECTED]>:

Hi!

I am a bit frustrated, since I haven't found any good value tutorial
how to develop QT4 software using KDevelop and CMake instead of QMake.

QMake automatically parses .ui files, creates includes, .moc files etc.

How can this be achieved by using CMake?

Can anyone point me to a good tutorial or provide some examples?

It can be done but the current CMake template and build system (in-tree, creating files everywhere and messing everything) is awful. I am talking about KDevelop 3.4 here.

I removed the CMakeFiles directory and the Makefile KDevelop creates and used my own stuff:
1. Create a "build" directory in your project's directory
2. Use this Makefile:

========
all:
        cd build; cmake ..; make

elampodaemon.wt: all

clean:
        rm -rf build/*
========
(replace "elampodaemon.wt" with your target)

3. Use this CMakeLists.txt:
========
PROJECT( elampo )

SET( DESIRED_QT_VERSION GREATER 4.3 )

FIND_PACKAGE( Qt4 REQUIRED )
FIND_PACKAGE( BoostDateTime REQUIRED )
FIND_PACKAGE( Witty REQUIRED )

INCLUDE(${QT_USE_FILE})

ADD_DEFINITIONS( -Wall -O2 -DQT_NO_KEYWORDS )

SET(CMAKE_BUILD_TYPE Debug)

SET( elampo_SRCs main.cpp searchpagewidget.cpp resultspagewidget.cpp configpagewidget.cpp resultsetwidget.cpp elampo.cpp )

ADD_EXECUTABLE( elampodaemon.wt ${elampo_SRCs} )

TARGET_LINK_LIBRARIES( elampodaemon.wt ${Witty_LIBRARY} ${Witty_HTTP_LIBRARY} ${BoostDateTime_LIBRARY} ${QT_LIBRARIES} )

EXECUTE_PROCESS(COMMAND cp ${CMAKE_SOURCE_DIR}/elampo.png ${CMAKE_BINARY_DIR}/elampo.png ) EXECUTE_PROCESS(COMMAND cp ${CMAKE_SOURCE_DIR}/elampo_small.png ${CMAKE_BINARY_DIR}/elampo_small.png ) EXECUTE_PROCESS(COMMAND cp ${CMAKE_SOURCE_DIR}/elampo.css ${CMAKE_BINARY_DIR}/elampo.css )
========
(replace with your stuff when needed, the "SET(CMAKE_BUILD_TYPE Debug)" is only needed if you want to debug from withing KDevelop)

--
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to