Installing packages in Linux usually revolves around making a package that conforms to a particular distributions packaging system. Fedora, RedHat and OpenSuse, for example use the rpm packaging. Debian, Ubuntu and the many Debian based systems use deb packaging. Slackware and Arch have their own systems, and with Gentoo, everything is compiled from scratch.
Now, from what I understand, you want to set up code so it can be compiled under Linux. Many distros have their own rules as to how the code is set up, especially the complicated code that your program seems to contain.
Some distro require that libraries are broken out and compiled on their own and then installed as dependencies. If your interested in creating a compiled rpm or deb file that can be easily installed from a distros repositories, you can look at these documents that explain i some degree how to do that.
If you are just interested in a manual install into any distro, where the user does the compiling themselves, directly from the code, you can circumvent certain rules and regulations and present just the code, along with instructions on using the "make" command. While this makes it easier on your part, it makes it harder on the user. First, because most users don't compile their own code, and second, because of a kind of versionitis that compiling that code will run into when using stable installs, such as Debian stable, or more recent cutting edge installs, such as Fedora. Even the version of the compiler that you would use could effect installation, since the compiler that is in a stable distro is not as recent, and not always compatible with newer versions of the same compiler.
Now, if you think this is confusing and frustrating, it is. If you would like to read more about what is required, take a look at this how-to titled "Compiling Software With Debian Linux". Go down to the fourth paragraph, and, then go to the link to the "Packages" page.
http://www.aboutdebian.com/compile.htm
Or, take a look at "How to create an RPM package" from the Fedora manual, which details much of the process of putting together an app that can be installed with the rpm/yum package management system.
https://fedoraproject.org/wiki/How_to_create_an_RPM_package
Now developers put together simple apps and modules with a small amount of dependencies all the time without too much trouble, but, when a complicated app like yours needs to be compiled and installed, one needs to make sure the correct version of libraries are used and that dependencies are handled correctly.
I'm hoping someone comes along that has more experience in packaging then I do, and can explain the finer details better than I can. There are folks who contribute to the forum that have that knowledge, but you might need to be patient, since during the summer months many are busy with vacations or other projects.
If you have any other questions, or, if I misjudged what it was you were looking for, don't hesitate to ask.