Hi Eric,
thanks a bunch! Just adding
> (setq ede-locate-setup-options
> '(ede-locate-global
> ede-locate-base))
to my cedet config re-enabled finding headers using GNU global. In my
case i would need to add (and maintain) a list of about 50 directories
to the include path of the EDE project i've setup. Using global instead
makes maintaining includes much easier. If there's no major drawback
(unfortunately: 'Lastly, Semanticdb can sometimes find include files in
its list of databases, though that isn't used much anymore.' seems to
indicate that there might be one) that really makes life much easier for me.
Thanks a lot for this great tool!
BR,
Kai
Eric M. Ludlam wrote:
> Hi,
>
> Finding headers is done via a range of different mechanisms. There is
> the include path (of course), then the Ede project has a "locator",
> which basically knows all the nooks in your project. Lastly, Semanticdb
> can sometimes find include files in its list of databases, though that
> isn't used much anymore.
>
> If you right-click on an include statement in your header that cannot
> be found, and select "Summarize Includes", it will display a list of
> where it is trying to find headers from, including a block about EDE.
> For example, if I'm in global.c, and do this, there is a section that
> looks like this:
>
> Include Path Summary:
>
> This file's project include search is handled by the EDE object:
> Buffer Target: #<project-am-program global>
> Buffer Project: #<project-am-makefile global>
> Backup in-project Locator: #<ede-locate-global Loc>
> EDE Project system include path: Empty
>
> If your project doesn't have an EDE project, then it can't use gnu
> global for that project. to use global, I need a configuration like
> this:
>
> (setq ede-locate-setup-options
> '(ede-locate-global
> ede-locate-base))
>
> Good Luck
> Eric
>
> On Tue, 2009-08-11 at 08:47 +0200, Kai Tetzlaff wrote:
>> Hi,
>>
>> i've enabled global support for c/c++-mode using
>>
>> (semanticdb-enable-gnu-global-databases 'c-mode)
>> (semanticdb-enable-gnu-global-databases 'c++-mode)
>>
>> and i've set up an ede-cpp-root-project. At some point in time the
>> global support enabled cedet/semantic to automatically find most
>> includes in my files without setting up :include-path in
>> ede-cpp-root-project. This was a big help since the project consists of
>> many directories which would lead to a huge list for :include-path.
>>
>> But for some reason header file lookup in the global db stopped working.
>> Only local header files are still found any others are now highlighted
>> as not found.
>>
>> In general, the global database seems to be found and working. At least
>> i get some results from semanticdb-test-gnu-global.
>>
>> Can anyone tell me how to enable global support again or provide some
>> hints how to debug why this is not working?
>>
>> Thanks,
>> Kai
>
>
|