Project file packaging - like gitHub

I have an Audio Vector Network Analyzer project that has been published and others have built and programmed this, compiling the files with the Arduino IDE. People have had trouble getting the files in the right locations. The project consists of myProject.ino and related files that would go into a personal myArduino type of directory plus other libraries that go into the personal myArduino/libraries. This works fine, but does not allow a single download from github, of the clone or zip type, to get everything in place. This would be solved by putting a "frozen" copy of all external libraries into a "libraries" sub folder under myProject folder. I thought from reading the Arduino "Sketch Build Process - Location Priority" that this was possible, but I have not been able to make it work. For info, the the project is large and putting everything on a single level would result in a long list of hopelessly confused files.

To make this simple, I setup a basic structure (using simple names):
myArduino
xxxx
libraries
yyyy
yyyy.h
yyyy.cpp
xxxx.ino
but the compiler does not find the yyyy.cpp library. I can supply the files if anyone wants, but the important point would seem to be that everything is found and compiles correctly if I use the conventional structure with the same files
myArduino
libraries
yyyy
yyyy.h
yyyy.cpp
xxxx
xxxx.ino

But for the latter case, I don't see a simple way to get distribute the yyyy library with the xxxx project. Suggestions? Thanks in advance!

Bob

I would bundle the libraries in the "src" subfolder of the sketch folder.

You'll need to change the #include directives in your sketch. For example, if the #include directive for a library looks like this:

#include <ArduinoOTA.h>

you have to change it to the relative path to the header file, something like:

#include "src/ArduinoOTA/src/ArduinoOTA.h"

Depending on how the libraries were written, you will sometimes need to modify the #include directives in the libraries as well.

SOLVED! - Many thanks, pert. Yes I altered the directory name to "src", added that to the INO include path and all complies. It now looks like:
myArduino
xxxx
src
yyyy
yyyy.h
yyyy.cpp
xxxx.ino
This puts everything inside the xxxx directory and all files and directories are easily packaged together.

I also played with more levels and it behaved fine. I added a "data" directory at the same level as "src" and it hid files, as advertised. I am off to change over the bigger AVNA project for which this will be most helpful. Thanks again, Bob

You're welcome. I'm glad if I was able to be of assistance. Enjoy!
Per