Bug 13377

Summary: gst-inspect on target is looking for a .so on host
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Jaewon Lee <jaewon>
Component: multimediaAssignee: Jaewon Lee <jaewon>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Medium+ CC: meta.mr.watcher, meta.watcher, randy.macleod, richard.purdie, ross.burton
Version: unspecified   
Target Milestone: 2.8 M2   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: Don't know

Description Jaewon Lee 2019-06-04 23:47:17 UTC
Add gstreamer1.0-python gstreamer1.0 to an image, on target run gst-inspect-1.0 and I see the following error 

** (gst-plugin-scanner:2343): CRITICAL **: 23:08:18.327: Couldn't g_module_open libpython. Reason: /WORKSPACE/build/tmp/work/aarch64/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 error was addressed in commit a2cf84affff8a78fdaa8fabcfa9b40be1936678e
this is in a comment:

+    # gstpythonplugin hardcodes the location of the libpython from the build
+    # workspace and then fails at runtime. We can override it using
+    # --with-libpython-dir=${libdir}, but 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. We need
+    # to think about the best way of handling this and possibly consult
+    # upstream.
Comment 1 Ross Burton 2019-06-05 11:07:57 UTC
As you've found the fix, can you send the patch?
Comment 2 Jaewon Lee 2019-06-07 22:17:55 UTC
Patch sent on mailing list

[OE-core][PATCH] gstreamer1.0-python_1.16.0.bb: Override libpython dir
Comment 3 Ross Burton 2019-06-08 07:26:23 UTC
Haven't seen that patch on the list yet...