| Summary: | Installed CMake target contains absolute paths and cannot be relocated | ||
|---|---|---|---|
| Product: | [Applications] marble | Reporter: | Samuel OMalley <7g7o5v4t> |
| Component: | general | Assignee: | marble-bugs |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | rahn |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Compiled Sources | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
Patch submitted: https://phabricator.kde.org/D25456 Closed by commit R34:3eb10f4339df: Patch from Samuel OMalley to make the include directory movable. |
SUMMARY There is an absolute path in MarbleTarget.cmake (INCLUDE_INSTALL_DIR). This absolute path means that the installed files cannot be moved and still used by CMake's find_package(). There should be _no_ absolute paths in any outputs of install. STEPS TO REPRODUCE 1. Marble: make install 2. Rename install dir 3. Attempt to depend on Marble libraries with find_package(Marble REQUIRED) OBSERVED RESULT CMake Error in src/libs/geo/CMakeLists.txt Imported target "Marble" includes non-existent path "/absolute/path/to/include/dirs/that/doesnt/exist" in its INTERFACE_INCLUDE_DIRECTORIES. Possible reasons include: * The path was deleted, renamed, or moved to another location. * An install or uninstall procedure did not complete successfully. * The installation package was faulty and references files it does not provide. EXPECTED RESULT No error. SOFTWARE/OS VERSIONS CMake: 3.11 Qt Version: 5.10 ADDITIONAL INFORMATION