Welcome, Guest. Please Login or Register
Arduino IDE for Visual Studio
 
 

Before logging an issue, please update to the latest release of Visual Micro from the Downloads Page.

When Logging a Support Issue in the Forum, please ensure you have also:-

  • Enabled vMicro > Compiler > Show Build Properties and Verbose
  • Re-Compile your program with these settings enabled
 
Save the new Output to a Text File and....
  • Click the Reply button and attach as .txt file OR
  • Click here to Email us with the file attached, and a link to your post
Support requests without the output above may be impossible to answer, so please help us to help you
 
  HomeSearch Tutorials & Wiki visualmicro.com LoginHelpRegister  
 
Page Index Toggle Pages: 1
Send Topic Print
Deep search for libraries (Read 255 times)
amelia
Junior Member
**
Offline



Posts: 10
ITALY
Deep search for libraries
Jul 23rd, 2022 at 7:03am
 
The "Deep search for libraries" function is obviously useful, but it takes a lot of time.
If there are "#include ..." in a ".h" or ".cpp" library, it is required.
My suggestion:
1- New project or new library added:
     a- "Deep search for libraries" = flag ON
     b- Generates a table with all the libraries in use and saves them for example in ".suo".
2- Project under development, no new libraries:
     a- "Deep search for libraries" = flag OFF
     b- Use the library table in use.

amelia
Back to top
 
 
IP Logged
 
Tim@Visual Micro
Administrator
*****
Offline



Posts: 11537
United Kingdom
Re: Deep search for libraries
Reply #1 - Jul 23rd, 2022 at 6:03pm
 
Thanks for the post. It is a complicated discussion but always looking to improve this area.

First to confirm... There should already be caching for deep search for all files except the .ino code?

Deep search honours conditional #include statements. For example #ifdef TEST #include <foo.h> #endif

This means that #defines and compiler statements can affect which libraries are discovered.

Deep search also discovers libraries included in other libraries. This means that if underlying library sources are updated without updating the project code, the previous search results become invalid.

The current level of cache should already avoid a lot of re-work during 2nd build, but we are looking at how we can take it up a level. Another alternative we are considering is to offer a higher level of cache along the lines you have suggested ++ alongside a manual menu item or button that will re-scan when a user knows external changes have been made.

There are also other items on our list for this, hopefully the next few months will see some more improvements.

If you believe the cache is not caching then please build and provide the information requested in yellow above.

Thanks





Back to top
 

Tim Leek
home
WWW  
IP Logged
 
Page Index Toggle Pages: 1
Send Topic Print