[cmake-developers] Better Eclipse CDT support

Alexander Neundorf neundorf at kde.org
Sat Apr 30 13:29:26 EDT 2011


On Saturday 30 April 2011, Oliver Buchtala wrote:
> Am 29.04.2011 21:45, schrieb Manuel Klimek:
> > On Fri, Apr 29, 2011 at 11:55 AM, Alexander Neundorf <neundorf at kde.org> 
wrote:
> >> On Thursday 28 April 2011, Oliver Buchtala wrote:
> >> ...
> >>
> >>> wst-file is allright and I see that all projects are generated :)
> >>>
> >>> Unfortunately, this working set stuff is yet a bit inconvenient, as it
> >>> is not an Eclipse built-in.
> >>>
> >>> What you need to do:
> >>> 0. Switch to C/C++ perspective (maybe this is the empty project
> >>> observation you described?)
> >>> 1. Import eclipse projects (all from the CDT_ECLIPSE_OUTPUT_DIR)
> >>>  -> you see all projects flat side by side?
> >>
> >> I have to import all the projects in eclipse/ manually one by one ?
> >
> > Nope, you just go to the toplevel directory, and eclipse will import
> > recursively.

Ah, I didn't know that.

> >>> I want to create an Eclipse Plugin which shall make all this more
> >>> convenient and more automatically.
> >>> Something like a CMake enabling 'Solution' file that manages imported
> >>> projects and working sets etc...
> >>> But yet I am a PDE beginner... so, this will take some more weeks...
> >>
> >> That sounds like a great plan :-)
> >>
> >> But, for me, the thing which sucks by far most about the Eclipse
> >> generator, is that Eclipse has these problems with out-of-source
> >> building.
> >> AFAIK Eclipse expects that the project file is at the root of the source
> >> tree, and that e.g. also the svn etc. directories are in this tree.
>
> Nowadays, there are ways to deal better with that: linked folders,
> virtual folders and linked resources

I'm not using Eclipse actively myself, I'm just maintaining the generator.
But what people told me is that if the sources are not in a subdir of the 
project file, then the svn support of Eclipse does not work.
Also if the sources are in a linked folder.
Did this change ?

> > For me Oliver's eclipse generator actually works with out-of-source
> > builds. (eclipse 3.7, CDT 8). If I remember correctly the main thing
> > to look out for is to put the workspace outside of both the source and
> > the cmake build directory.
>
> Actually, *only* out-of-tree works well - unfortunately even
> (out-of-tree)^2 is necessary ;)
>
> The proposed solution is pretty similar to that generated for Visual
> Studio using virtual folders for structure and explicit referenced files.
> There are two options when importing generated eclipse projects:
> 1. Create out-of-every-tree using CDT_ECLIPSE_OUTPUT_DIR, then easy
> import by one click (ehm... at least O(1)) ;)
> 2. do not use CDT_ECLIPSE_OUTPUT_DIR? then make sure you copy the
> projects into your workspace (by activating a checkbox in the dialog).
>     Though, I do not recomment as reconfigure won't affect your projects
> then.
>
> Unfortunately the following is not working (would be my favorite):
> proj-root
>    - src ...
>    - build
>      - eclipse-prj
>        - <eclipse-linked folder to proj-root/>
> together with using proj-root/build as eclipse workspace.
> It is not allowed to have 'active' projects in some sub-dir of linked
> folders,
> or in other words, to link to parent-folders from eclipse proj.

So how should the directory layout look like ?
I currently do
SOMEDIR/foo-src/
SOMEDIR/foo-build/
and there your new generator creates a 
SOMEDIR/foo-build/eclipse/ directory.

Alex




More information about the cmake-developers mailing list