[tracker/sam/build-fixes: 1/2] build: Include libdir in rpath



commit a92309f9cf9099a8b0b54908e032dcb181ab6c63
Author: Sam Thursfield <sam afuera me uk>
Date:   Wed Jul 10 11:19:39 2019 +0100

    build: Include libdir in rpath
    
    This fixes the case where Tracker is installed into a non-standard
    prefix such as /opt/tracker and then fails to start with an error
    such as this:
    
            /opt/tracker/bin/tracker: error while loading shared libraries: libtracker-control-2.0.so.0: 
cannot open shared object file: No such file or directory

 meson.build                   | 1 +
 src/tracker-store/meson.build | 2 +-
 src/tracker/meson.build       | 2 +-
 3 files changed, 3 insertions(+), 2 deletions(-)
---
diff --git a/meson.build b/meson.build
index 4a0452b30..92da1240b 100644
--- a/meson.build
+++ b/meson.build
@@ -322,6 +322,7 @@ po_subdir = join_paths(source_root, 'po')
 gsettings_schema_dir = join_paths(get_option('datadir'), 'glib-2.0', 'schemas')
 
 tracker_internal_libs_dir = join_paths(get_option('prefix'), get_option('libdir'), 'tracker-' + 
tracker_api_version)
+tracker_install_rpath = ':'.join([tracker_internal_libs_dir, libdir])
 
 # NOTE: We don't use ${TRACKER_API_VERSION} because other content like
 # the ontology is installed to the same location.
diff --git a/src/tracker-store/meson.build b/src/tracker-store/meson.build
index 857070c55..df0e87fda 100644
--- a/src/tracker-store/meson.build
+++ b/src/tracker-store/meson.build
@@ -30,7 +30,7 @@ tracker_store = executable('tracker-store',
     ],
     install: true,
     install_dir: join_paths(get_option('prefix'), get_option('libexecdir')),
-    install_rpath: tracker_internal_libs_dir)
+    install_rpath: tracker_install_rpath)
 
 install_data(
     'tracker-backup.xml',
diff --git a/src/tracker/meson.build b/src/tracker/meson.build
index c54d3d2de..1bc682cb2 100644
--- a/src/tracker/meson.build
+++ b/src/tracker/meson.build
@@ -22,7 +22,7 @@ executable('tracker', sources,
         '-DMANDIR="@0@"'.format(join_paths(get_option('prefix'), get_option('datadir'), 'man')),
     ],
     install: true,
-    install_rpath: tracker_internal_libs_dir,
+    install_rpath: tracker_install_rpath,
     # This doesn't depend on tracker_common_dep because of
     # https://github.com/mesonbuild/meson/issues/671
     dependencies: [tracker_control_dep, tracker_sparql_dep, tracker_data_dep],


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]