From fe5d2f0b666c83e3336ea9962c8e2e4c39816e21 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 28 Dec 2023 10:50:39 +0000 Subject: bitbake: lib/bb: Add workaround for libgcc issues with python 3.8 and 3.9 With python 3.8 and 3.9, we see intermittent errors of: libgcc_s.so.1 must be installed for pthread_cancel to work Aborted (core dumped) which seem related to: https://stackoverflow.com/questions/64797838/libgcc-s-so-1-must-be-installed-for-pthread-cancel-to-work https://bugs.ams1.psf.io/issue42888 These tend to occur on debian 11 and ubuntu 20.04. Workaround this by ensuring libgcc is preloaded in all cases. (Bitbake rev: c6666f6cfafd55e1c980239a7c5ff908f1a69196) Signed-off-by: Richard Purdie --- bitbake/lib/bb/__init__.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'bitbake/lib/bb/__init__.py') diff --git a/bitbake/lib/bb/__init__.py b/bitbake/lib/bb/__init__.py index 3cf02069c5..37ac878f96 100644 --- a/bitbake/lib/bb/__init__.py +++ b/bitbake/lib/bb/__init__.py @@ -15,6 +15,13 @@ import sys if sys.version_info < (3, 8, 0): raise RuntimeError("Sorry, python 3.8.0 or later is required for this version of bitbake") +if sys.version_info < (3, 10, 0): + # With python 3.8 and 3.9, we see errors of "libgcc_s.so.1 must be installed for pthread_cancel to work" + # https://stackoverflow.com/questions/64797838/libgcc-s-so-1-must-be-installed-for-pthread-cancel-to-work + # https://bugs.ams1.psf.io/issue42888 + # so ensure libgcc_s is loaded early on + import ctypes + libgcc_s = ctypes.CDLL('libgcc_s.so.1') class BBHandledException(Exception): """ -- cgit v1.2.3-54-g00ecf