diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-12-28 10:50:39 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-12-30 11:03:22 +0000 |
commit | c6666f6cfafd55e1c980239a7c5ff908f1a69196 (patch) | |
tree | ef852ef4f05ab5b65b3b56dd7f0ed2a041d9812a | |
parent | 39691d5d0f44a266f917a13884707283f83543de (diff) | |
download | bitbake-c6666f6cfafd55e1c980239a7c5ff908f1a69196.tar.gz |
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/bb/__init__.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/bb/__init__.py b/lib/bb/__init__.py index 3cf02069c..37ac878f9 100644 --- a/lib/bb/__init__.py +++ b/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): """ |