Exec format error in PIL/_imaging.cpython-38-x86_64-linux-gnu.so
I'm running the Alpine-based postmarketOS distribution in Qemu. I installed lollypop
with apk add lollypop
which installed PIP / pillow as a dependency. Lollypop fails to launch though because it calls into PIL which in turn tries to call into libtiff which then exits with an exec format error.
I traced it down until here:
$ ldd /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so
/lib/ld-musl-x86_64.so.1 (0x7fb897f5f000)
libjpeg.so.8 => /usr/lib/libjpeg.so.8 (0x7fb897e87000)
libopenjp2.so.7 => /usr/lib/libopenjp2.so.7 (0x7fb897e3d000)
libz.so.1 => /lib/libz.so.1 (0x7fb897e23000)
libimagequant.so.0 => /usr/lib/libimagequant.so.0 (0x7fb897e13000)
Error loading shared library libtiff.so.5: Exec format error (needed by /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x7fb897dec000)
libc.musl-x86_64.so.1 => /lib/ld-musl-x86_64.so.1 (0x7fb897f5f000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x7fb897de7000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x7fb897ddf000)
libbsd.so.0 => /usr/lib/libbsd.so.0 (0x7fb897dc9000)
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyTuple_New: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFIsTiled: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFSetSubDirectory: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PySlice_Unpack: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyModule_AddObject: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyObject_IsTrue: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyArg_ParseTuple: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyDict_GetItem: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyDict_New: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyEval_RestoreThread: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFRGBAImageEnd: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PySequence_Check: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFGetFieldDefaulted: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyErr_Occurred: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFGetVersion: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyFloat_AsDouble: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyCapsule_New: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFComputeStrip: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _Py_BuildValue_SizeT: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFReadEncodedStrip: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyUnicode_FromString: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyLong_FromLong: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyModule_AddIntConstant: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyFloat_FromDouble: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _PyArg_ParseTuple_SizeT: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _PyBytes_Resize: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyBuffer_Release: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyObject_Print: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFSetWarningHandler: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PySequence_GetItem: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyTuple_GetItem: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyBytes_FromStringAndSize: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFFdOpen: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: Py_BuildValue: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyBool_FromLong: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFTileSize: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyNumber_AsSsize_t: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyLong_AsSsize_t: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PySequence_Fast: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _PyObject_New: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PySequence_Size: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyObject_Size: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyBytes_AsString: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyErr_SetFromErrno: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _TIFFmemcpy: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyErr_NoMemory: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyType_IsSubtype: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyModule_Create2: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyErr_ExceptionMatches: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFStripSize: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyLong_AsLong: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFReadRGBATile: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyObject_GetBuffer: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFFlush: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyList_New: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFRGBAImageOK: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyUnicode_AsLatin1String: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyErr_Clear: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyErr_Format: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyModule_GetDict: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyDict_SetItemString: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PySlice_AdjustIndices: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyType_Ready: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFSetWarningHandlerExt: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _Py_Dealloc: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyNumber_Check: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyList_GetItem: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyObject_CallMethod: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyLong_AsLongLong: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFClientOpen: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyObject_CallFunction: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFRGBAImageGet: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFGetField: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFRGBAImageBegin: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyEval_SaveThread: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyObject_Free: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFClose: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyLong_FromSsize_t: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFMergeFieldInfo: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyTuple_Size: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyList_SetItem: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFWriteScanline: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyBytes_Size: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFReadTile: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyErr_SetString: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyBytes_AsStringAndSize: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyList_Size: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: TIFFVSetField: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _PyErr_BadInternalCall: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyFloat_Type: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PySlice_Type: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyUnicode_Type: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyExc_TypeError: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _Py_NoneStruct: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyExc_SystemError: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyExc_ValueError: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyExc_MemoryError: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyExc_OSError: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyExc_RuntimeError: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: _Py_TrueStruct: symbol not found
Error relocating /usr/lib/python3.8/site-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so: PyExc_IndexError: symbol not found
Some more environment info:
$ uname -a
Linux qemu-amd64 5.10.1-0-virt #1-Alpine SMP Tue, 15 Dec 2020 09:14:42 UTC x86_64 Linux
$ cat /etc/apk/arch
x86_64
$ cat /etc/apk/repositories
http://mirror.postmarketos.org/postmarketos/master
http://dl-2.alpinelinux.org/alpine/edge/main
http://dl-2.alpinelinux.org/alpine/edge/community
http://dl-2.alpinelinux.org/alpine/edge/testing