One QCubed installation for different projects
I just created a small project, which shared qcubed installation with another project. I though I point out some weak spots (in my opinion).
If you have comments or suggestions or additions, feel free to speak up. We could even end up with a wiki page which gives pointers how to do so.
What I did:
Copied prepend.inc.php and configuration.inc.php to my project folder. prepend uses project's configuration file.
In configuration.inc.php, I modified DOCROOT, INSTALLATION etc to qcubed installation.
Added __QCUBED_CUSTOM__ which points to my project's folder "qcubed", where I copied "controls" (see below).
MODEL, META_CONTROLS, DRAFTS, FORMBASE etc folders point to my project's folder.
Copied "_devtools" to my project's folder. Modified codegen.php to include correct prepend.inc.php (from my project folder). Also, codegen_settings.xml is located there (as different projects have different conf etc).
Problems I had:
error.inc.php - I needed to see stack trace with function calls with arguments. Currently it didn't show arguments (which I know is good for security cautions). But as I wanted to debug, I added args manually. I could extend error.inc.php, if I could. It should be included in prepend.inc.php or it should use base-class pattern.
qcodo.inc.php is in _core, but there are functions like _t(), _p(), _f() etc, which are meant to be overridden. My suggestion is that nothing in "_core" should be modified. Instead stuff is overridable somewhere else.
I copied qcubed.inc.php and error.inc.php to my project folder.
Introduced constant __QCUBED_CUSTOM__ . Every non-core folder (basically only "controls" currently) is copied to project folder. That way I can modify non-base classes for my project. In qcubed.inc.php I changed ClassFile values to use __QCUBED_CUSTOM__ where it had non-base class (QControl, QForm, QTextBox, QDataGrid etc). Also, error.inc.php was included using __QCUBED_CUSTOM__.
Used ImageControl and therefore needed "assets/_core/php/image.php" to include correct qcubed.inc.php file (default would use qcubed installation conf, but I need it to use project's one instead). Had to copy the whole assets folder to my project. If something is updated in the core, it's hard to follow. There was a possibility to override QImageControlBase to include image.php from qcubed installation, but image.php itself is used separately and includes different conf etc. So, currently I didn't find any better solution. Though I think there should be a better way for this. If you have suggestions, let me know.
With this I managed to use default qcubed installation (with some very minor tweaks) with 2 different projects. I might have forgot something, as I operated with this a month ago and might not remember everything.

Agsel - very interesting write-up, thank you! As others reply, I'd love to include the best practices you've come up with into this tutorial: http://examples.qcu.be/assets/_core/php/examples/other/includes_outside.php