summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2023-12-28 10:50:39 +0000
committerSteve Sakoman <steve@sakoman.com>2024-01-04 04:09:43 -1000
commit0b4769de4a956e6c52a00125768d3f269f14a83a (patch)
treefca293bc5e3ffce2a2b85f7a9c7bb6b18cc6cbb1 /bitbake
parent958a1ab3d0a987983fcda888bab167943d3ae3f4 (diff)
downloadpoky-0b4769de4a956e6c52a00125768d3f269f14a83a.tar.gz
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: 72bf75f0b2e7f36930185e18a1de8277ce7045d8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Steve Sakoman <steve@sakoman.com>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/__init__.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/bitbake/lib/bb/__init__.py b/bitbake/lib/bb/__init__.py
index 3163481e56..75b66edc48 100644
--- a/bitbake/lib/bb/__init__.py
+++ b/bitbake/lib/bb/__init__.py
@@ -15,6 +15,13 @@ import sys
15if sys.version_info < (3, 8, 0): 15if sys.version_info < (3, 8, 0):
16 raise RuntimeError("Sorry, python 3.8.0 or later is required for this version of bitbake") 16 raise RuntimeError("Sorry, python 3.8.0 or later is required for this version of bitbake")
17 17
18if sys.version_info < (3, 10, 0):
19 # With python 3.8 and 3.9, we see errors of "libgcc_s.so.1 must be installed for pthread_cancel to work"
20 # https://stackoverflow.com/questions/64797838/libgcc-s-so-1-must-be-installed-for-pthread-cancel-to-work
21 # https://bugs.ams1.psf.io/issue42888
22 # so ensure libgcc_s is loaded early on
23 import ctypes
24 libgcc_s = ctypes.CDLL('libgcc_s.so.1')
18 25
19class BBHandledException(Exception): 26class BBHandledException(Exception):
20 """ 27 """