summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia
diff options
context:
space:
mode:
authorJaewon Lee <jaewon.lee@xilinx.com>2019-06-10 17:35:53 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-06-11 13:26:55 +0100
commitc07435a83a45332cfe2639f5f09bf21e5ead19b5 (patch)
tree8846031fa1335fdf7690cbb6874c58cb7e1948e7 /meta/recipes-multimedia
parent9910a3631ce953b8dd8f3d57d6e122c7fd8cb462 (diff)
downloadpoky-c07435a83a45332cfe2639f5f09bf21e5ead19b5.tar.gz
gstreamer1.0-python_1.16.0.bb: Override libpython dir
As mentioned in upstream commit a2cf84affff8a78fdaa8fabcfa9b40be1936678e, "gstpythonplugin hardcodes the location of the libpython from the build workspace and then fails at runtime." In other words, PYTHON_LIB_LOC was set to the recipe-sysroot-native dir in the gstreamer1.0-python workspace on the host. Overriding PYTHON_LIB_LOC with /usr/lib by adding --with-libpython-dir=${libdir} to EXTRA_OECONF to fix this issue. The error that was seen is: ** (gst-plugin-scanner:2343): CRITICAL **: 23:08:18.327: Couldn't g_module_open libpython. Reason: ${project}/build/tmp/work/${arch}/ gstreamer1.0-python/1.14.4-r0/recipe-sysroot-native/usr/lib/libpython3.5m.so: cannot open shared object file: No such file or directory The comment continues and says "it still fails because it looks for a symlinked library ending in .so instead of the actually library with LIBNAME.so.MAJOR.MINOR. Although we could patch the code to use the path we want, it will break again if the library version ever changes." This isn't the case anymore as the package is deploying /usr/lib/gstreamer-1.0/libgstpython.cpython-37m-i386-linux-gnu.so, a versionless so. (From OE-Core rev: ac1d6d55e9cc647caf104e94465e32cf25647ad1) Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com> Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia')
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.0.bb12
1 files changed, 3 insertions, 9 deletions
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.0.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.0.bb
index af9f3f213b..0f3aac1906 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.0.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.0.bb
@@ -22,16 +22,10 @@ UNKNOWN_CONFIGURE_WHITELIST_append = " --enable-introspection --disable-introspe
22 22
23inherit autotools pkgconfig distutils3-base upstream-version-is-even gobject-introspection distro_features_check 23inherit autotools pkgconfig distutils3-base upstream-version-is-even gobject-introspection distro_features_check
24 24
25EXTRA_OECONF += "--with-libpython-dir=${libdir}"
26
25do_install_append() { 27do_install_append() {
26 # gstpythonplugin hardcodes the location of the libpython from the build 28
27 # workspace and then fails at runtime. We can override it using
28 # --with-libpython-dir=${libdir}, but it still fails because it looks for a
29 # symlinked library ending in .so instead of the actually library with
30 # LIBNAME.so.MAJOR.MINOR. Although we could patch the code to use the path
31 # we want, it will break again if the library version ever changes. We need
32 # to think about the best way of handling this and possibly consult
33 # upstream.
34 #
35 # Note that this particular find line is taken from the Debian packaging for 29 # Note that this particular find line is taken from the Debian packaging for
36 # gst-python1.0. 30 # gst-python1.0.
37 find "${D}" \ 31 find "${D}" \