diff options
author | Sam Van Den Berge <sam.van.den.berge@gmail.com> | 2021-06-17 09:26:16 +0200 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2021-06-18 08:39:32 -0700 |
commit | 96c7664e4002ae1b691e50fc00f83e41c23dd557 (patch) | |
tree | 7cdcf0a3f1561a74eb105fb43c806871343a4afa /meta-oe/recipes-support/libiio/files/0001-python-Do-not-verify-whether-libiio-is-installed-whe.patch | |
parent | df8ecfeacfc84a34a0696a48f3a1dc6d83496271 (diff) | |
download | meta-openembedded-contrib-96c7664e4002ae1b691e50fc00f83e41c23dd557.tar.gz |
libiio: fix installing libiio when python3 bindings are enabled
This patch fixes the following error when libiio is installed when
python3 bindings are enabled:
ERROR: Execution of '.../libiio/0.21+gitAUTOINC+565bf68ecc-r0/temp/run.do_install.2349473' failed with exit code 1:
running build
running build_py
running install
Traceback (most recent call last):
File ".../libiio/0.21+gitAUTOINC+565bf68ecc-r0/build/bindings/python/setup.py", line 77, in _check_libiio_installed
raise OSError
OSError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File ".../libiio/0.21+gitAUTOINC+565bf68ecc-r0/build/bindings/python/setup.py", line 106, in <module>
setup(**config)
File ".../libiio/0.21+gitAUTOINC+565bf68ecc-r0/recipe-sysroot-native/usr/lib/python3.9/site-packages/setuptools/__init__.py", line 153, in setup
return distutils.core.setup(**attrs)
File ".../libiio/0.21+gitAUTOINC+565bf68ecc-r0/recipe-sysroot-native/usr/lib/python3.9/distutils/core.py", line 148, in setup
dist.run_commands()
File ".../libiio/0.21+gitAUTOINC+565bf68ecc-r0/recipe-sysroot-native/usr/lib/python3.9/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File ".../libiio/0.21+gitAUTOINC+565bf68ecc-r0/recipe-sysroot-native/usr/lib/python3.9/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File ".../libiio/0.21+gitAUTOINC+565bf68ecc-r0/build/bindings/python/setup.py", line 52, in run
self._check_libiio_installed()
File "/libiio/0.21+gitAUTOINC+565bf68ecc-r0/build/bindings/python/setup.py", line 83, in _check_libiio_installed
raise Exception(msg)
Exception: The libiio library could not be found.
libiio needs to be installed first before the python bindings.
The latest release can be found on GitHub:
https://github.com/analogdevicesinc/libiio/releases
Some time ago a fix for this issue was already discussed here [1].
However in the same discussion also a second issue was being handled.
A fix for the second issue was merged in 51f98865da0. The first issue
didn't pop up anymore and so a fix was never applied.
Recently however after switching from build machine, I started seeing
the first issue. I suspect due to build caching the first issue didn't
pop up anymore before up until now. With this patch, fixes are now
available for both issues handled in [1].
[1]: https://github.com/openembedded/meta-openembedded/issues/248
Signed-off-by: Sam Van Den Berge <sam.van.den.berge@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/libiio/files/0001-python-Do-not-verify-whether-libiio-is-installed-whe.patch')
-rw-r--r-- | meta-oe/recipes-support/libiio/files/0001-python-Do-not-verify-whether-libiio-is-installed-whe.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/meta-oe/recipes-support/libiio/files/0001-python-Do-not-verify-whether-libiio-is-installed-whe.patch b/meta-oe/recipes-support/libiio/files/0001-python-Do-not-verify-whether-libiio-is-installed-whe.patch new file mode 100644 index 0000000000..4d3dcd5ced --- /dev/null +++ b/meta-oe/recipes-support/libiio/files/0001-python-Do-not-verify-whether-libiio-is-installed-whe.patch @@ -0,0 +1,34 @@ +From 717b0f46b23ddc042da481d1d446bdd1c6c49142 Mon Sep 17 00:00:00 2001 +From: Julien Malik <julien.malik@unseenlabs.fr> +Date: Mon, 27 Jul 2020 14:34:44 +0200 +Subject: [PATCH] python: Do not verify whether libiio is installed when + cross-compiling + +This should fix #561 + +Signed-off-by: Julien Malik <julien.malik@paraiso.me> +--- + bindings/python/setup.py.cmakein | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/bindings/python/setup.py.cmakein b/bindings/python/setup.py.cmakein +index cd14e2e..96d58a8 100644 +--- a/bindings/python/setup.py.cmakein ++++ b/bindings/python/setup.py.cmakein +@@ -54,6 +54,13 @@ class InstallWrapper(install): + install.run(self) + + def _check_libiio_installed(self): ++ cross_compiling = ("${CMAKE_CROSSCOMPILING}" == "TRUE") ++ if cross_compiling: ++ # When cross-compiling, we generally cannot dlopen ++ # the libiio shared lib from the build platform. ++ # Simply skip this check in that case. ++ return ++ + from platform import system as _system + from ctypes import CDLL as _cdll + from ctypes.util import find_library +-- +2.25.1 + |