Re: [cedet-semantic] Semantic not finding includes
Brought to you by:
zappo
From: Eric M. L. <er...@si...> - 2013-06-21 02:49:31
|
On 05/28/2013 04:16 PM, Brian wrote: > Semantic is not able to find most of the includes in my project. > > I have followed the instructions in this document: > > http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html > > I have created an ede project, and I have tried adding all manner of > paths to semanticdb-project-roots, including the exact paths that > includes it can't find live in, and yet they are still highlighted in > red. In the attached screenshot, you can clearly see that #include > "Logger.h" cannot be found, and yet the exact path to it is listed. I > have also put the parent directory in the include-path section of > ede-cpp-root-project, and it still cannot find it. > > With regards to the system level includes, those live in > > /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk > > which is listed, and it cannot find those either. > > I spent quite a lot of time on this, and would appreciate any help. Hi Brian, Sorry for the crazy-long delay in replying. The best way to get the include path set up is not with project roots (which just specifies where a project might start), but with the ede include path you mentioned. For your case, it would appear like this: (ede-cpp-root-project "NAME" :file "FILENAME" :system-include-path '( "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk/" ) ) and then the system includes from there should get parsed correctly. After setting that up, you need to flush project data. If you're not sure how to do that, you need to flush various caches. For example, restart Emacs (or delete the buffer), and using "C-u M-x bovinate" to force all the tags to be refreshed. Good Luck Eric |