Bug 1898977 - mir fails to build with Python 3.10: Python Imaging Library (PIL) not found / free(): invalid pointer
Summary: mir fails to build with Python 3.10: Python Imaging Library (PIL) not found /...
Keywords:
Status: CLOSED DUPLICATE of bug 1904379
Alias: None
Product: Fedora
Classification: Fedora
Component: mir
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Neal Gompa
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1904379
Blocks: PYTHON3.10
TreeView+ depends on / blocked
 
Reported: 2020-11-18 12:29 UTC by Miro Hrončok
Modified: 2021-01-09 11:31 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-01-09 11:31:53 UTC
Type: Bug


Attachments (Terms of Use)

Description Miro Hrončok 2020-11-18 12:29:01 UTC
mir fails to build with Python 3.10.0a2.

+ /usr/bin/cmake -S . -B x86_64-redhat-linux-gnu -DCMAKE_C_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_Fortran_FLAGS_RELEASE:STRING=-DNDEBUG -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DCMAKE_INSTALL_PREFIX:PATH=/usr -DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=/usr/lib64 -DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share -DLIB_SUFFIX=64 -DBUILD_SHARED_LIBS:BOOL=ON -GNinja -DMIR_LINK_TIME_OPTIMIZATION=ON -DMIR_USE_PRECOMPILED_HEADERS=OFF -DCMAKE_INSTALL_LIBEXECDIR=usr/libexec/mir '-DMIR_PLATFORM=gbm-kms;x11;wayland;eglstream-kms'
-- The C compiler identification is GNU 10.2.1
-- The CXX compiler identification is GNU 10.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Lcov: /usr/bin/lcov  
-- Found gcovr: /bin/gcovr  
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.20") found components: doxygen dot 
-- doxygen 1.8.20 (>= 1.8.0) available - enabling make target doc
-- Performing Test HAS_W_MISMATCHED_TAGS
-- Performing Test HAS_W_MISMATCHED_TAGS - Success
-- Performing Test HAS_W_PSABI
-- Performing Test HAS_W_PSABI - Success
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.7.3") 
-- Found Boost: /usr/include (found suitable version "1.73.0", minimum required is "1.48.0") found components: date_time system program_options filesystem iostreams regex 
-- Checking for module 'wayland-eglstream'
--   Found wayland-eglstream, version 1.1.5
-- Checking for module 'wlcs'
--   Found wlcs, version 1.2.0
-- Found EGL: /usr/lib64/libEGL.so  
-- Found GLESv2: /usr/lib64/libGLESv2.so  
-- Found GLM: /usr/include  
-- Found Protobuf: /usr/lib64/libprotobuf.so (found version "3.13.0") 
-- Found GLog: /usr/lib64/libglog.so  
-- Found GFlags: /usr/lib64/libgflags.so  
-- Checking for module 'lttng-ust'
--   Found lttng-ust, version 2.12.0
-- Checking for module 'libudev'
--   Found libudev, version 246
-- Checking for module 'glib-2.0'
--   Found glib-2.0, version 2.67.0
-- Checking for modules 'gio-2.0;gio-unix-2.0'
--   Found gio-2.0, version 2.67.0
--   Found gio-unix-2.0, version 2.67.0
-- Checking for module 'wayland-server'
--   Found wayland-server, version 1.18.0
-- Checking for module 'wayland-client'
--   Found wayland-client, version 1.18.0
-- Checking for module 'xcb'
--   Found xcb, version 1.13.1
-- Checking for module 'xcb-composite'
--   Found xcb-composite, version 1.13.1
-- Checking for module 'xcb-xfixes'
--   Found xcb-xfixes, version 1.13.1
-- Checking for module 'xcb-render'
--   Found xcb-render, version 1.13.1
-- Checking for module 'xcursor'
--   Found xcursor, version 1.2.0
-- Checking for module 'libdrm'
--   Found libdrm, version 2.4.103
-- Checking for module 'glesv2'
--   Found glesv2, version 3.2
-- Checking for module 'gbm>=9.0.0'
--   Found gbm, version 20.2.2
-- Checking for module 'epoxy'
--   Found epoxy, version 1.5.4
-- Checking for module 'nettle'
--   Found nettle, version 3.6
-- Checking for module 'wayland-egl'
--   Found wayland-egl, version 18.1.0
-- Checking for module 'xkbcommon'
--   Found xkbcommon, version 1.0.1
-- Checking for module 'libinput'
--   Found libinput, version 1.16.3
-- Looking for dlvsym
-- Looking for dlvsym - found
-- Looking for dlsym
-- Looking for dlsym - found
-- Checking for module 'libxml++-2.6'
--   Found libxml++-2.6, version 2.42.0
-- Checking for module 'uuid'
--   Found uuid, version 2.36.0
-- Checking for module 'freetype2'
--   Found freetype2, version 23.4.17
-- Performing Test MIR_COMPILE_WITH_W_NO_GNU_ZERO_VARIADIC_MACRO_ARGUMENTS
-- Performing Test MIR_COMPILE_WITH_W_NO_GNU_ZERO_VARIADIC_MACRO_ARGUMENTS - Success
-- Performing Test HAS_W_GNU_EMPTY_INITIALIZER
-- Performing Test HAS_W_GNU_EMPTY_INITIALIZER - Failed
-- Checking for module 'yaml-cpp'
--   Found yaml-cpp, version 0.6.3
-- Performing Test HAS_W_NO_ATTRIBUTE_ALIAS
-- Performing Test HAS_W_NO_ATTRIBUTE_ALIAS - Success
-- Found XKBCOMMON: /usr/lib64/libxkbcommon.so  
free(): invalid pointer
CMake Error at cmake/FindPIL.cmake:7 (message):
  Python Imaging Library (PIL) not found
Call Stack (most recent call first):
  examples/example-server-lib/CMakeLists.txt:1 (find_package)

For the build logs, see:
https://copr-be.cloud.fedoraproject.org/results/@python/python3.10/fedora-rawhide-x86_64/01769264-mir/

For all our attempts to build mir with Python 3.10, see:
https://copr.fedorainfracloud.org/coprs/g/python/python3.10/package/mir/

Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.10:
https://copr.fedorainfracloud.org/coprs/g/python/python3.10/

Let us know here if you have any questions.

Python 3.10 will be included in Fedora 35. To make that update smoother, we're building Fedora packages with early pre-releases of Python 3.10.
A build failure prevents us from testing all dependent packages (transitive [Build]Requires), so if this package is required a lot, it's important for us to get it fixed soon.
We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side.

Comment 1 Miro Hrončok 2020-11-19 12:35:58 UTC
I suspect PIL (pillow) is broken. See also bz1899498 and bz1896390.

Comment 2 Miro Hrončok 2021-01-09 11:31:53 UTC

*** This bug has been marked as a duplicate of bug 1904379 ***


Note You need to log in before you can comment on or make changes to this bug.