[CMake] CMake generators (Xcode and Unix Makefile)

Tobias Rudolph tobias.rudolph at artorg.unibe.ch
Thu Apr 16 06:33:31 EDT 2009


On 16 Apr 2009, at 11:54, Andreas Pakulat wrote:

> On 16.04.09 09:26:45, Tobias Rudolph wrote:
>> On 15 Apr 2009, at 22:35, Alexander Neundorf wrote:
>>> On Wednesday 15 April 2009, Michael Jackson wrote:
>>>> On Apr 15, 2009, at 9:57 AM, christophe laferriere wrote:
>>> ...
>>>>> - some of my headers are generated by cmake (myproj.h.in became
>>>>> myproj.h and is include in some tests for example) but I can't  
>>>>> find
>>>>> those files in the xcode project I get.
>>>>>
>>>>> Thanks in advance for any good advice on how I can combine xcode
>>>>> project and unix makefile to be able to use both.
>>>>
>>>> Use 2 separate build directories for each type of build files, ie,
>>>> use
>>>> Build-make for makefiles and Build-xcode for Xcode project builds.
>>>> This will ensure each build directory has the correct build files  
>>>> and
>>>> generated files for its use.
>>>
>>> With xcode projects you could also use "xcodebuild" from the command
>>> line to
>>> build the project.
>>>
>>>> In your add_executable() command, in addition to the source files
>>>> also
>>>> include the headers and generated headers for those to show up in
>>>> Xcode.
>>>>
>>>> Lastly, in the Xcode preferences, under the "Debugging" topic you  
>>>> may
>>>> want to turn OFF the "Load Symbols Lazily" so debugging actually
>>>> works.
>>>>
>>>> <opinion>If Xcode is too much of a pain and you are NOT building 64
>>>> bit binaries then you can try Eclipse CDT instead. It will work  
>>>> with
>>>> your makefiles OR you can use the Eclipse CDT generator to generate
>>>> an
>>>> actual Eclipse CDT project. I personally use Eclipse CDT with plain
>>>> makefiles and am very happy with it. There seems to be an issue  
>>>> with
>>>> Eclipse being able to recognize a 64 bit binary. You can still  
>>>> build
>>>> them but the Eclipse CDT debugger does not recognize them to  
>>>> actually
>>>> debug them. bummer.</opinion>
>>>>
>>>> <Even more lastly>Qt has "QtCreator" which is starting to get  
>>>> support
>>>> for Makefiles. In early versions it looked very promising and was
>>>> faster to edit files than either Eclipse or Xcode. Just something  
>>>> to
>>>> keep on eye on.</Even more lastly>
>>>
>>> QtCreator supports loading CodeBlocks project files, which cmake can
>>> generate
>>> (this was added to QtCreator especially for the purpose of better
>>> support for
>>> cmake)
>>
>> QtCreator has bulit-in support for  CMakeLists.txt files.
>
> No it does not, it generates a CodeBlocks file behind the scenes and  
> then
> uses the information from that to supply include directories and so  
> on to
> the rest of the IDE. I didn't check how it actually builds cmake  
> projects,
> but I'm guessing it uses one of the Makefile generators (i.e.
> unix-makefiles or nmake) in the configured builddir to build the  
> projects.
> Andreas
>

That's true, it uses UNIX Makefiles (I am on MacOSX). But, this is  
happening behind the scenes and the process is well integrated into  
the IDE.

tobias

> -- 
> You shall be rewarded for a dastardly deed.
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake



More information about the CMake mailing list