Description
I have a fairly large project using cmake (manually crafted) where a number of external 3rd party libraries (openSSL, et al.) are built into a local build directory. The nice thing with this is that everything is in 1 place: the project! (It is also required for cross-compiling but this no relevant).
I also have a large number of custom source files.
The indexer works most of the time, but there is always a number of unresolved symbols / names.
In the parser log file, I see things like:
Unresolved includes (from headers in index):
file:/mnt/data/..../oauth.h is not indexed
But the list of unresolved includes, for a given source file, varies upon rebuilding the index.
Navigating to the declaration (hitting F3 and see oauth.h) works perfectly well.
Sometime reordering the #include statements resolves the unresolved. But not always.
Doing a full rebuild may or may not resolve the unresolved and / or create new unresolved that were perfectly Ok before the rebuild.
Other source files, sometime in the same directory as the affected one, do have the same symbols resolved properly. This is with the same rebuilt index run (so not after a refresh).
I have a situation where a X.cpp file, that includes X.h to gets access to oauth.h (via X.h own include) finds the symbols. But X.h does not see the symbols and has the error above in its parser log file.
Using refresh and other actions in the C/C++ Index menu does not help.