]> code.ossystems Code Review - openembedded-core.git/commit
gstreamer1.0-python_1.16.0.bb: Override libpython dir
authorJaewon Lee <jaewon.lee@xilinx.com>
Tue, 11 Jun 2019 00:35:53 +0000 (17:35 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 11 Jun 2019 12:26:50 +0000 (13:26 +0100)
commitac1d6d55e9cc647caf104e94465e32cf25647ad1
treeb201dd3a4a547653b7c6a47b3bb25e0cf68b61fe
parent86266dfcd70b8e3435d267538c3e6e4d69be829e
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.

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>
meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.0.bb