[cfe-dev] LLVM, Clang Development IDEs

Manuel Klimek via cfe-dev cfe-dev at lists.llvm.org
Fri Sep 11 02:44:09 PDT 2015


On Fri, Sep 11, 2015 at 11:40 AM Vladimir Voskresensky - Oracle <
vladimir.voskresensky at oracle.com> wrote:

> Hello Manuel,
>
>
> On 09/11/15 11:59 AM, Manuel Klimek wrote:
>
> On Thu, Sep 10, 2015 at 7:59 PM Vladimir Voskresensky - Oracle via cfe-dev
> <cfe-dev at lists.llvm.org> wrote:
>
>> Hello Keith,
>>
>> I'm from Oracle (previously from Sun Microsystems) and use NetBeans C++
>> IDE for
>> developing Clang based tools.
>>
>
> Oh, this is awesome :)
>
> I've demoed this to Argyrios Kyrtzidis ~year ago and he was impressed by
> it's parsing speed :-)
> NB needed just 1 minute to parse whole LLVM+Clang 3.4 codebase on my
> laptop.
> Also I was complaining that migrating to i.e. Clang's preprocessor makes
> us 2x slower (which is still the case for upcoming NB 8.1, but we trying to
> restore our speed)
>
>
>
>> Till 8.0 version Netbeans had own parser (as Eclipse). Starting from
>> upcoming
>> 8.1 NB is trying to use some clang components in experimental mode.
>>
>
> Will this by any chance use the compilation database integration?
>
> NetBeans for a long time has own "build interceptor". It helps to put code
> bases with even really complex build systems into IDE.
> When developer uses Project with Existing Sources wizard and specify
> commands which he proceed in cmd shell, then IDE executes them and
> interpose compiler invocations to extract cwd and all flags passed to
> compiler.
> Then all is persisted in project properties, so user gain "Compile File"
> for free, because IDE for each file knows how it was compiled.
> For CMake based codebases json database is produced and used to extract
> flags.
> Am I answering your question? Or do you mean smth different?
>

Let me rephrase: for example, YouCompleteMe supports using libclang & its
compilation database interface to get the necessary compile flags for C++
files. Due to that support, I can take an arbitrary internal build system
and add support for YCM by providing a libclang with a special
implementation of the CompilationDatabase. Is that possible with NetBeans?


>
>
> Vladimir.
>
>
>
>>
>> Vladimir.
>>
>> On 09/10/15 03:17 AM, Keith Smith via cfe-dev wrote:
>> > Mats, Renalto - Thanks for the information
>> >
>> > I beg to differ that Eclipse CDT hasn't caught on. The originator of
>> > Eclipse CDT, QNX, and the maintainers, use Eclipse CDT as their IDE
>> > for their OS. QNX is in many high end car nav systems today.
>> >
>> > Eclipse CDT is the basis for many embedded tool chains used by
>> > firmware engineers, both in Linux and Windows.
>> >
>> > Eclipse CDT may not have caught on as a host OS, host app development
>> > IDE, but it is used extensively.
>> >
>> > I have used it for over ten years now. It has had its limitations,
>> > like no 'headless' builds, but that has been corrected.
>> >
>> > Anyway thanks for the info. I was afraid that emacs and vi(m) would be
>> > part of the response. :( Don't use either at present.
>> >
>> > Keith Smith
>> >
>> > On Wed, Sep 9, 2015 at 10:35 AM, mats petersson <mats at planetcatfish.com>
>> wrote:
>> >>
>> >> On 9 September 2015 at 15:03, Renato Golin <renato.golin at linaro.org>
>> wrote:
>> >>> On 9 September 2015 at 14:29, mats petersson <mats at planetcatfish.com>
>> >>> wrote:
>> >>>> Technically, I'm not an LLVM or Clang developer [by which I mean, I'm
>> >>>> not
>> >>>> contributing code to LLVM or Clang, although I do have a patch for
>> clang
>> >>>> that may make it in at some point], but I do use Emacs with cscope.
>> >>> Honest question: how does cscope copes with C++11 constructs? I
>> >>> finally gave up emacs when cscope was the only thing I could use and
>> >>> it wasn't enough. Maybe I missed something?
>> >>
>> >> I have not tried on big projects, but I use cscope  on C++ in my hobby
>> >> project compiler, which uses limited C++11 features, and it's not
>> failing in
>> >> any obvious way for this use-case. But llvm is "out of tree", and I
>> >> typically use google and the online doxygen pages for LLVM searches.
>> >>
>> >> My main use is in my day-job, which is nearly all C, so C++11 is not a
>> big
>> >> issue - but the build we use has all of clang and llvm in the sources,
>> and
>> >> cscope is not failing in any obvious way, and I can search for
>> "getType" and
>> >> it finds a load of them. But I'm sure there may be more subtle things
>> that I
>> >> don't notice because when I use cscope in this project, I'm typically
>> >> searching for C symbols, not C++ things.
>> >>>
>> >>>
>> >>>> I'm not trying to start a war with Renato about "vi(m) vs (x)emacs" -
>> >>>> it's
>> >>>> pointless,
>> >>> That was a joke. :)
>> >>
>> >> Sorry, my "sarcasticly pointing out the pointlessness of a editor
>> flame-war"
>> >> obviously didn't have the (right) sarcasm font... ;)
>> >>>
>> >>>
>> >>>> it's just one of those choices one makes at some point in life -
>> >>>> once you know enough to do things with ease in one, you end up not
>> >>>> liking
>> >>>> the other.
>> >>> Yup. Especially as you get older... :)
>> >>
>> >> I've been old quite some time now... ;)
>> >>
>> >> --
>> >> Mats
>> >>>
>> >>>
>> >>>> I'm sufficiently damaged that I type ESC+w to copy text in
>> >>>> the browser - which of course doesn't work... :(
>> >>> I type :wq and "i" everywhere, too. :)
>> >>>
>> >>> cheers,
>> >>> --renato
>> >>
>> >
>> >
>>
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20150911/0b5e3ce8/attachment.html>


More information about the cfe-dev mailing list