
Hi, I am looking for recommendations for developing Boost, especially code in the graph library. At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto-discovered include paths etc. But before fiddling around with Eclipse to get all the settings right, I'd wanted to to ask for your recommendations. And maybe there are already settings available to make it "just work", at least initially. Cheers, Jens

I am looking for recommendations for developing Boost, especially code in the graph library.
At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto-discovered include paths etc.
But before fiddling around with Eclipse to get all the settings right, I'd wanted to to ask for your recommendations. And maybe there are already settings available to make it "just work", at least initially.
I use Eclipse to develop code that uses Boost heavily, and I've been fairly happy with it. My recommendation is that you use the latest version (Juno), because it contains a fix for a bug present in previous versions that caused Eclipse to parse Boost headers inaccurately. As for settings, I prefer to provide the include paths manually. That doesn't (necessarily) mean auto-discovering them doesn't work, just that I haven't taken the time for figure out how to use it. Regards, Nate

I am looking for recommendations for developing Boost, especially code in the graph library.
At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto-discovered include paths etc.
But before fiddling around with Eclipse to get all the settings right, I'd wanted to to ask for your recommendations. And maybe there are already settings available to make it "just work", at least initially.
I've used many IDEs in the past but the editors from those IDEs could challenge vi/vim (together with cscope). Oliver

On Thu, Sep 6, 2012 at 9:03 AM, Jens Müller <blog@tessarakt.de> wrote:
Hi,
I am looking for recommendations for developing Boost, especially code in the graph library.
At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto-discovered include paths etc.
But before fiddling around with Eclipse to get all the settings right, I'd wanted to to ask for your recommendations. And maybe there are already settings available to make it "just work", at least initially.
I typically use QtCreator. Works nicely, especially if you open a cmake project (boost-cmake could probably help with that).

Dear Jens, On 06.09.2012, at 07:03, Jens Müller wrote:
At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto-discovered include paths etc.
We are working hard since about 2006 to create good C++ support for Eclipse CDT. We implemented large parts of CDT's refactoring infrastructure and used it in a variety of plug-ins we provide free of charge. Some of our tools actually made it into CDT or at least into Eclipse marketplace (metriculator, CUTE plug-in). I/we use Eclipse CDT for development and teaching our students. The versions before Ganymede were not always adequate with respect to setting up projects, parsing C++, but as of today (Indigo, Juno) that should no longer be a problem. Only Juno's parser still lacks some of C++11 syntax. We implemented the remaining parts, but not in time to make it for the release. If you need that, I believe we can arrange a download for the patched version that I use for my teaching of C++11 from mid-September on. For existing projects using SCons, we even created a plug-in (http://sconsolidator.com) that allows to import and export SCons projects seamlessly. Those projects even build faster within the IDE for small changes, since it lets SCons running in the background and as long as you do not fiddle with file dependencies you can get very quick recompiles without paying the high price of SCons' startup time. If someone needs help and support using Eclipse CDT for C++ development, feel free to ask. Best Regards Peter. -- Prof. Peter Sommerlad Institut für Software: Bessere Software - Einfach, Schneller! HSR Hochschule für Technik Rapperswil Oberseestr 10, Postfach 1475, CH-8640 Rapperswil http://ifs.hsr.ch http://cute-test.com http://linticator.com http://includator.com tel:+41 55 222 49 84 == mobile:+41 79 432 23 32 fax:+41 55 222 46 29 == mailto:peter.sommerlad@hsr.ch

We are working hard since about 2006 to create good C++ support for Eclipse CDT. We implemented large parts of CDT's refactoring infrastructure and used it in a variety of plug-ins we provide free of charge. Some of our tools actually made it into CDT or at least into Eclipse marketplace (metriculator, CUTE plug-in).
I am very intrigued by this! What plug-ins have you developed beside metriculator and CUTE?
Only Juno's parser still lacks some of C++11 syntax. We implemented the remaining parts, but not in time to make it for the release. If you need that, I believe we can arrange a download for the patched version that I use for my teaching of C++11 from mid-September on.
That sounds wonderful! I have been wanting to try out template aliases, but have been holding back because Eclipse doesn't support them yet. Are these patches publically available? Have they been submitted to Eclipse? Thanks! Nate

Only Juno's parser still lacks some of C++11 syntax. We implemented the remaining parts, but not in time to make it for the release. If you need that, I believe we can arrange a download for the patched version that I use for my teaching of C++11 from mid-September on.
That sounds wonderful! I have been wanting to try out template aliases, but have been holding back because Eclipse doesn't support them yet.
Are these patches publically available? Have they been submitted to Eclipse?
Same thing here, I've stopped using Eclipse mainly because of this lack of support and because the automatic formatter was messing with some C++11 code. I would love to have these patches and be able to use Eclipse again. -- Beren Minor

-----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Jens Müller Sent: Thursday, September 06, 2012 6:03 AM To: boost@lists.boost.org Subject: [boost] IDE for developing Boost
Hi,
I am looking for recommendations for developing Boost, especially code in the graph library.
At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto-discovered include paths etc.
But before fiddling around with Eclipse to get all the settings right, I'd wanted to to ask for your recommendations. And maybe there are already settings available to make it "just work", at least initially.
I've just started using NetBeans (netbeans.org) on Windows having also used it on Ubuntu. (As title hints, it was designed for Java but it is also designed to work for C++). Seems promising but I haven't had enough use to give a definite recommendation. Seems a hassle to get a recent compiler like g++ 4.7 or Clang on Windows (default is gcc 3.4.4). Paul --- Paul A. Bristow, Prizet Farmhouse, Kendal LA8 8AB UK +44 1539 561830 07714330204 pbristow@hetp.u-net.com

On Thu, Sep 06, 2012 at 11:51:25AM +0100, Paul A. Bristow wrote:
Seems a hassle to get a recent compiler like g++ 4.7 or Clang on Windows (default is gcc 3.4.4).
You can trivially acquire a gcc-4.7+ or clang-3.x from mingw-w64, or a gcc-4.6-ish from TDM. Whether they and their gdb meshes into the ad-hoc madness interfaces that GCC-using IDEs, that's a different thing of course. They work reasonably well for me with Qt Creator which I resort to when I have to do C++. Eclipse CDT was utterly about a year ago, with multi-second pauses as you type into a C++ source file, eventually resulting in "internal error while displaying internal error". -- Lars Viklund | zao@acc.umu.se

On 9/6/2012 8:07 AM, Lars Viklund wrote:
On Thu, Sep 06, 2012 at 11:51:25AM +0100, Paul A. Bristow wrote:
Seems a hassle to get a recent compiler like g++ 4.7 or Clang on Windows (default is gcc 3.4.4). You can trivially acquire a gcc-4.7+ or clang-3.x from mingw-w64, or a gcc-4.6-ish from TDM.
Whether they and their gdb meshes into the ad-hoc madness interfaces that GCC-using IDEs, that's a different thing of course.
They work reasonably well for me with Qt Creator which I resort to when I have to do C++.
Eclipse CDT was utterly about a year ago, with multi-second pauses as you type into a C++ source file, eventually resulting in "internal error while displaying internal error".
I switched from Eclipse to QtCreator a year or two ago. Both very cool (I heard JavaBeans was too), but QtCreator was just a teensy bit cooler, faster, and took 1/10th the memory footprint (which mattered on a big project's parallel build on my old 4GB RAM machine). Haven't looked back.

On 6 September 2012 at 20:01, Jim Bell <Jim@jc-bell.com> wrote:
On 9/6/2012 8:07 AM, Lars Viklund wrote:
On Thu, Sep 06, 2012 at 11:51:25AM +0100, Paul A. Bristow wrote:
Seems a hassle to get a recent compiler like g++ 4.7 or Clang on Windows (default is gcc 3.4.4).
You can trivially acquire a gcc-4.7+ or clang-3.x from mingw-w64, or a gcc-4.6-ish from TDM.
Whether they and their gdb meshes into the ad-hoc madness interfaces that GCC-using IDEs, that's a different thing of course.
They work reasonably well for me with Qt Creator which I resort to when I have to do C++.
Eclipse CDT was utterly about a year ago, with multi-second pauses as you type into a C++ source file, eventually resulting in "internal error while displaying internal error".
I switched from Eclipse to QtCreator a year or two ago. Both very cool (I heard JavaBeans was too), but QtCreator was just a teensy bit cooler, faster, and took 1/10th the memory footprint (which mattered on a big project's parallel build on my old 4GB RAM machine). Haven't looked back.
Some time ago I developed Boost.Build Plugin for Qt Creator https://github.com/mloskot/qt-creator-plugin-boostbuild It's a prototype or an early stage, but ready to give it a go, I'd say. Best regards, -- Mateusz Loskot, http://mateusz.loskot.net

2012/9/6 Paul A. Bristow:
Seems a hassle to get a recent compiler like g++ 4.7 or Clang on Windows (default is gcc 3.4.4).
http://sourceforge.net/projects/mingwbuilds/ -- Regards, niXman ___________________________________________________ Dual-target(32 & 64 bit) MinGW compilers for 32 and 64 bit Windows: http://sourceforge.net/projects/mingwbuilds/

-----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Jens Müller Sent: Thursday, September 06, 2012 6:03 AM To: boost@lists.boost.org Subject: [boost] IDE for developing Boost
I am looking for recommendations for developing Boost, especially code in the graph library.
At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto- discovered include paths etc.
But before fiddling around with Eclipse to get all the settings right, I'd wanted to ask for your recommendations.
I've just started using NetBeans (netbeans.org) on Windows having also used it on Ubuntu.
(As title hints, it was designed for Java but it is also designed to work for C++/C).
Seems promising but I haven't had enough use to give a definite recommendation.
Apologies for replying to self, but I now have enough experience with NetBeans to give a firm recommendation. Despite its naff name showing Java roots, it works rather well with C++ (and 7.3 promises html5 generation too). Does most nifty things that Visual Studio does, including debug. Works with Boost.Test - provided you remember to build the gcc libraries and define BOOST_TEST_DYN_LINK in the Project compiler properties. And * Has Subversion (and GIT and Hg) built in for convenience. * Can generate a Doxygen-style comment template (/param and /return) for functions and classes which will encourage writers to document their code as they go along (The Right Time To Document). Works very similarly on Ubuntu and on Windows. Worth a try. Paul --- Paul A. Bristow, Prizet Farmhouse, Kendal LA8 8AB UK +44 1539 561830 07714330204 pbristow@hetp.u-net.com

On Sep 6, 2012, at 1:03 AM, Jens Müller wrote:
Hi,
I am looking for recommendations for developing Boost, especially code in the graph library.
At work, most developers (not for Boost, for some commercial software), most developers are using Eclipse. This works quite fine as soon as it has properly auto-discovered include paths etc.
But before fiddling around with Eclipse to get all the settings right, I'd wanted to to ask for your recommendations. And maybe there are already settings available to make it "just work", at least initially.
I spend a good chunk of my day hacking the parallel version of the graph library and have never managed to set up an IDE to work any better than Emacs. I had auto-completion working for a while years ago but when I broke it somewhere along the line I found I didn't miss it. I think the only feature I would actually find useful is if an IDE could automagically determine the proper namespace for function calls if they're not in the current namespace(s) and warn me, but errors of that form only take a couple seconds to fix so I never put any effort into it. The only language I've tried using a "real" IDE for is Java, and writing Java code makes me want to shoot myself in the face anyway so it's unlikely an IDE will change that. When it comes to Boost I don't think all the fancy IDE tools in the world proxy for familiarity with the libraries. Cheers, Nick

On 09/06/2012 07:03 AM, Jens Müller wrote:
But before fiddling around with Eclipse to get all the settings right, I'd wanted to to ask for your recommendations. And maybe there are already settings available to make it "just work", at least initially.
I find that 'simple' text editors are much more flexible and scalable, and are thus more versatile. I had been using geany for a while, but I'm considering moving to sublime. It opens in a second, can search very quickly over 20k files, and is fully programmable. There is plugin to integrate clang static analysers with it, but it doesn't scale very well unfortunately.

On Fri, Sep 7, 2012 at 7:15 PM, Mathias Gaunard <mathias.gaunard@ens-lyon.org> wrote:
There is plugin to integrate clang static analysers with it, but it doesn't scale very well unfortunately.
I've been using Sublime as a replacement for Eclipse since some time, and although most of its features are great, I can't really use it in combination of Boost or any kind of heavily templated C++ library. The clang-based autocompletion is amazing but indeed, not scalable... at all. -- Beren Minor

On Fri, Sep 7, 2012 at 7:25 PM, Beren Minor <beren.minor+boost@gmail.com> wrote:
On Fri, Sep 7, 2012 at 7:15 PM, Mathias Gaunard <mathias.gaunard@ens-lyon.org> wrote:
There is plugin to integrate clang static analysers with it, but it doesn't scale very well unfortunately.
I've been using Sublime as a replacement for Eclipse since some time, and although most of its features are great, I can't really use it in combination of Boost or any kind of heavily templated C++ library. The clang-based autocompletion is amazing but indeed, not scalable... at all.
Similar problems when using ViM + ctags. It's a pain and if you try to generate the index file you should be prepared to have a very big file. In the past I've tried Eclipse, but I left since it did not work well with heavy-templated classes (if I'm not wrong, Galileo is the last version I've tried). So now I only use ViM (without ctags) -- Marco

Am 07.09.2012 21:40, schrieb sguazt:
On Fri, Sep 7, 2012 at 7:25 PM, Beren Minor <beren.minor+boost@gmail.com> wrote:
On Fri, Sep 7, 2012 at 7:15 PM, Mathias Gaunard <mathias.gaunard@ens-lyon.org> wrote:
There is plugin to integrate clang static analysers with it, but it doesn't scale very well unfortunately. I've been using Sublime as a replacement for Eclipse since some time, and although most of its features are great, I can't really use it in combination of Boost or any kind of heavily templated C++ library. The clang-based autocompletion is amazing but indeed, not scalable... at all.
Similar problems when using ViM + ctags. It's a pain and if you try to generate the index file you should be prepared to have a very big file. In the past I've tried Eclipse, but I left since it did not work well with heavy-templated classes (if I'm not wrong, Galileo is the last version I've tried).
So now I only use ViM (without ctags) what about cscope? works much better than ctag

Hi,
I've been using Sublime as a replacement for Eclipse since some time, and although most of its features are great, I can't really use it in combination of Boost or any kind of heavily templated C++ library. The clang-based autocompletion is amazing but indeed, not scalable... at all.
Similar problems when using ViM + ctags. It's a pain and if you try to generate the index file you should be prepared to have a very big file. In the past I've tried Eclipse, but I left since it did not work well with heavy-templated classes (if I'm not wrong, Galileo is the last version I've tried).
So now I only use ViM (without ctags)
Have you looked into clang_complete? AFAIK they are working on code navigation based on clang as well. http://www.vim.org/scripts/script.php?script_id=3302 I don't miss code completion. So I have not really experiented too much with clang_complete, but maybe it is a good help for anyone else. Since they are using the same parser a the clang compiler, you probably won't get much better code completion and navigation anywhere else. Christof -- Sent from my Android phone with K-9 Mail. Please excuse my brevity.

Hi, I have been using clang complete for some time now. It does not work out of the box in windows (windos7-64) yet. But on a unix box it works quite well. There is also a project called clang_indexer a fork of clang_complete that provides symbol lookup through clang. With more in depth vim knowledge both projects could be improved a lot... Tried Eclipse CDT a few times, last time cimbined with vim (eclim) but never got rid of the random horrible delays - makes entering the zen state impossible. regards Andreas 2012/9/8 Christof Donat <cd@okunah.de>:
Hi,
I've been using Sublime as a replacement for Eclipse since some time, and although most of its features are great, I can't really use it in combination of Boost or any kind of heavily templated C++ library. The clang-based autocompletion is amazing but indeed, not scalable... at all.
Similar problems when using ViM + ctags. It's a pain and if you try to generate the index file you should be prepared to have a very big file. In the past I've tried Eclipse, but I left since it did not work well with heavy-templated classes (if I'm not wrong, Galileo is the last version I've tried).
So now I only use ViM (without ctags)
Have you looked into clang_complete? AFAIK they are working on code navigation based on clang as well.
http://www.vim.org/scripts/script.php?script_id=3302
I don't miss code completion. So I have not really experiented too much with clang_complete, but maybe it is a good help for anyone else. Since they are using the same parser a the clang compiler, you probably won't get much better code completion and navigation anywhere else.
Christof
-- Sent from my Android phone with K-9 Mail. Please excuse my brevity.
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

On Sat, Sep 8, 2012 at 1:32 PM, Christof Donat <cd@okunah.de> wrote:
Hi,
I've been using Sublime as a replacement for Eclipse since some time, and although most of its features are great, I can't really use it in combination of Boost or any kind of heavily templated C++ library. The clang-based autocompletion is amazing but indeed, not scalable... at all.
Similar problems when using ViM + ctags. It's a pain and if you try to generate the index file you should be prepared to have a very big file. In the past I've tried Eclipse, but I left since it did not work well with heavy-templated classes (if I'm not wrong, Galileo is the last version I've tried).
So now I only use ViM (without ctags)
Have you looked into clang_complete? AFAIK they are working on code navigation based on clang as well.
http://www.vim.org/scripts/script.php?script_id=3302
I don't miss code completion. So I have not really experiented too much with clang_complete, but maybe it is a good help for anyone else. Since they are using the same parser a the clang compiler, you probably won't get much better code completion and navigation anywhere else.
Oliver and Christof, Thank you for yuor suggestions. They look promising. I'll give them a try. Cheers, -- Marco

Hi, On 07.09.2012, at 21:40, sguazt wrote:
In the past I've tried Eclipse, but I left since it did not work well with heavy-templated classes (if I'm not wrong, Galileo is the last version I've tried).
It is much better now, (since Helios, and even better with Juno). And we work hard to get most of C++11 syntax into the next service Release for Juno. Give me a note, if you would like to try that earlier. Regards Peter. -- Prof. Peter Sommerlad Institut für Software: Bessere Software - Einfach, Schneller! HSR Hochschule für Technik Rapperswil Oberseestr 10, Postfach 1475, CH-8640 Rapperswil http://ifs.hsr.ch http://cute-test.com http://linticator.com http://includator.com tel:+41 55 222 49 84 == mobile:+41 79 432 23 32 fax:+41 55 222 46 29 == mailto:peter.sommerlad@hsr.ch

Am 10.09.2012 10:06, schrieb Peter Sommerlad:
Hi, On 07.09.2012, at 21:40, sguazt wrote:
In the past I've tried Eclipse, but I left since it did not work well with heavy-templated classes (if I'm not wrong, Galileo is the last version I've tried). It is much better now, (since Helios, and even better with Juno). And we work hard to get most of C++11 syntax into the next service Release for Juno. Give me a note, if you would like to try that earlier.
Dear Peter, sorry for replying so late. I won't have time to develop Boost code for quite some time. But this is helpful as well for the code I'm working if at work. There we have container classes with are derived from a base-container template, and auto-complete does not work for really basic stuff like the ::const_iterator type defined in the (template) base. I (and at least one colleague) would be more than interested to try out any improvements. Best regards, Jens
participants (16)
-
Andreas Pokorny
-
Andrey Semashev
-
Beren Minor
-
Christof Donat
-
Jens Müller
-
Jim Bell
-
Lars Viklund
-
Mateusz Loskot
-
Mathias Gaunard
-
Nathan Ridge
-
Nick Edmonds
-
niXman
-
Oliver Kowalke
-
Paul A. Bristow
-
Peter Sommerlad
-
sguazt