[[TracNav(TracNav/TOC_Coding)]] = CMake Build System = == Using CMake == CMake is a build tool which created Makefile for you. {{{ $ cmake . }}} With those Makefiles, the project the can be built. {{{ $ make -j2 all }}} == Rebuilding the CMakeCache == Sometime it happens, that CMake won't accept the new setting you added some where in a CMakeLists.txt. As a workaround -- I have not found a better solution yet -- delete the the toplevel CMakeCache, and rebuild every Makefile. {{{ $ cd && ./cmakeclearcache && cmake . }}} == Writing CMakeLists.txt == Just as an simple example for how to write a CMakeLists.txt.[[br]] {{{ PROJECT(Orxonox) SET( SRC_FILES some_soource.cc another_source.cc ) INCLUDE_DIRECOTRIES(.) ADD_LIBRARY(network ${SRC_FILES}) }}} == Using CMake with KDevelop == CMake is capable of creating .kdevelop files, which are used as project files in (guess where) KDevelop. To create them simply use the following command {{{ $ cmake . -GKDevelop3 }}} === Optimize KDevelop === Do some configursation to make the usage of KDevelop smoother[[br]] Go to '''{{{Project->Project Option->Build Option->Make}}}''', and do the following changes[[BR]] * Select Run Multiple Jobs, and set Number of Simultaneous Jobs to 3[[BR]] * set Make Prority to 5 [[br]] * Optional: Add Environment Variables [[br]] * i.e Name: CXXFLAGS; Value: -O2 -pipe[[br]] * CXXFLAGS or LDFLAGS are also possible. In fact any compiler flags can be set here[[br]] ''If you don't know what CFLAGS are, don't set them, otherwise use at you own discretion. Only reasonable flags will be supported''[[br]][[br]] Go to '''{{{Project->Project Option->Run Option}}}''' * Working Directory: just add {{{/bin}}} ''you still need to run {{{./run-script}}} the first time''