QuickQanava
QuickQanava copied to clipboard
Installing QuickQanava through CMake seems to be broken
Installing QuickQanava using cmake seems to be broken. After running make install
, the qml files and binaries seem to be installed in the correct place, but the header files are unusable in the current configuration.
Some headers like for example container_adapter.h
(amoung many) use #include with relative paths to other headers like QuickContainers.h. This is a problem since the directory structure of the installed headers differs from the directory structure inside the QuickQanava project. And so when building QuickQanava, no compiler errors are reported, while it's impossible to include QuickQanava.h
in another project after installation.
I managed to fix this while integrating QuickQanava into my project, but along the way I also made some other (exclusively build system) changes.
Generally it's nice to have the ability to build and install headers, binaries, cmake package files and qml files of dependencies locally inside a projects directory tree (like KDE modules which have this good practice).
What I mean by this is that it would be good to be able to change CMAKE_INSTALL_PREFIX
from the default /usr/local
to some subdirectory in your project and have everything loaded from there. This would make it very straightforward to use QuickQanava by building it directly from github using ExternalProject_Add
. And since it would be installed locally, no admin privileges would be required in the install step. Then it can easily be included using find_package
etc. This also makes it easier to later package the project in question.
I managed to enable this and get QuickQanava working in my project so I was thinking that something like this would also be generally desirable. If you want I could contribute these modifications to QuickQanava. All changes are made exclusively to CMake files, no source or header files were changed.