grame-cncm / guidolib

Guido project - music score layout engine - music description language
http://guido.grame.fr
Mozilla Public License 2.0
152 stars 34 forks source link

How is QGuidoPainter.h installed? #133

Closed yurivict closed 2 years ago

yurivict commented 2 years ago

Is GuidoQTLibraries supposed to be a separate project?

inscore uses QGuidoPainter.h from environments/Qt/libs but guidolib doesn't install it.

dfober commented 2 years ago

QGuidoPainter.h is not installed, it's part of the Qt support and thus of a specific environment. It's the developer responsibility to pick up the appropriate files depending on the selected environment. inscore uses the Qt environment to draw guido scores and picks up the files directly from the guidolib submodule. No need to install them.

yurivict commented 2 years ago

This is prone to incompatibilities of guidolib in submodule and preinstalled guidolib. For example, in the presence of preinstalled guidolib inscore uses both preinstalled and submodule versions of guidolib which is generally a problem.

A better approach is to spawn Qt- and other frontends of guidolib as separate projects.

dfober commented 2 years ago

Again, QGuidoPainter.h and all the Qt environment is not installed. In addition, graphic devices (like Qt) are linked statically. Thus, there can be no problem of incompatibility.