libfreenect fails to build with Python 3.8.0b1. + /usr/bin/cmake -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 .. -DBUILD_AUDIO=ON -DBUILD_C_SYNC=ON -DBUILD_CV=ON -DBUILD_REDIST_PACKAGE=ON -DBUILD_EXAMPLES=ON -DBUILD_FAKENECT=ON -DBUILD_PYTHON=OFF -DBUILD_PYTHON2=OFF -DBUILD_PYTHON3=ON -DBUILD_OPENNI2_DRIVER=ON CMake Warning (dev) at /usr/share/cmake/Modules/FindOpenGL.cmake:275 (message): Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when available. Run "cmake --help-policy CMP0072" for policy details. Use the cmake_policy command to set the policy and suppress this warning. FindOpenGL found both a legacy GL library: OPENGL_gl_LIBRARY: /usr/lib64/libGL.so and GLVND libraries for OpenGL and GLX: OPENGL_opengl_LIBRARY: /usr/lib64/libOpenGL.so OPENGL_glx_LIBRARY: /usr/lib64/libGLX.so OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for compatibility with CMake 3.10 and below the legacy GL library will be used. Call Stack (most recent call first): examples/CMakeLists.txt:16 (find_package) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at /usr/share/cmake/Modules/FindOpenGL.cmake:275 (message): Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when available. Run "cmake --help-policy CMP0072" for policy details. Use the cmake_policy command to set the policy and suppress this warning. FindOpenGL found both a legacy GL library: OPENGL_gl_LIBRARY: /usr/lib64/libGL.so and GLVND libraries for OpenGL and GLX: OPENGL_opengl_LIBRARY: /usr/lib64/libOpenGL.so OPENGL_glx_LIBRARY: /usr/lib64/libGLX.so OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for compatibility with CMake 3.10 and below the legacy GL library will be used. Call Stack (most recent call first): wrappers/cpp/CMakeLists.txt:7 (find_package) This warning is for project developers. Use -Wno-dev to suppress it. CMake Error in wrappers/opencv/CMakeLists.txt: Imported target "opencv_calib3d" includes non-existent path "//include" in its INTERFACE_INCLUDE_DIRECTORIES. Possible reasons include: * The path was deleted, renamed, or moved to another location. * An install or uninstall procedure did not complete successfully. * The installation package was faulty and references files it does not provide. CMake Error in wrappers/opencv/CMakeLists.txt: Imported target "opencv_calib3d" includes non-existent path "//include" in its INTERFACE_INCLUDE_DIRECTORIES. Possible reasons include: * The path was deleted, renamed, or moved to another location. * An install or uninstall procedure did not complete successfully. * The installation package was faulty and references files it does not provide. CMake Warning: Manually-specified variables were not used by the project: BUILD_AUDIO CMAKE_Fortran_FLAGS_RELEASE INCLUDE_INSTALL_DIR LIB_INSTALL_DIR SHARE_INSTALL_PREFIX SYSCONF_INSTALL_DIR error: Bad exit status from /var/tmp/rpm-tmp.pzumEv (%build) ~/build/BUILD/libfreenect-88166014859c09f6ad6a93f0862bdcc4e46dc87e/build ~/build/BUILD/libfreenect-88166014859c09f6ad6a93f0862bdcc4e46dc87e -- The C compiler identification is GNU 9.1.1 -- The CXX compiler identification is GNU 9.1.1 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Operating system is Linux -- Got System Processor x86_64 -- Linux x86_64 Detected -- libfreenect will be installed to /usr -- Headers will be installed to /usr/include/libfreenect -- Libraries will be installed to /usr/lib64 -- Found libusb-1.0: -- - Includes: /usr/include/libusb-1.0 -- - Libraries: /usr/lib64/libusb-1.0.so -- Check if the system is big endian -- Searching 16 bit integer -- Looking for sys/types.h -- Looking for sys/types.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for stddef.h -- Looking for stddef.h - found -- Check size of unsigned short -- Check size of unsigned short - done -- Using unsigned short -- Check if the system is big endian - little endian -- Found PythonInterp: /usr/bin/python3.8 (found version "3.8") -- Looking for include file pthread.h -- Looking for include file pthread.h - found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE -- Found OpenGL: /usr/lib64/libOpenGL.so -- Found GLUT: /usr/lib64/libglut.so -- Found OpenCV: / (found version "3.4.6") -- Found PythonInterp: /usr/bin/python3 (found version "3.8") -- Found PythonLibs: /usr/lib64/libpython3.so (found version "3.8.0b1") -- Configuring done -- Generating done -- Build files have been written to: /builddir/build/BUILD/libfreenect-88166014859c09f6ad6a93f0862bdcc4e46dc87e/build RPM build errors: Bad exit status from /var/tmp/rpm-tmp.pzumEv (%build) For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.8/fedora-rawhide-x86_64/00939820-libfreenect/ For all our attempts to build libfreenect with Python 3.8, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/libfreenect/ 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.8: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/ Let us know here if you have any questions.
How reproducible? Steps to reproduce? It looks like this is a bug in OpenCV, not python 3.8. I'll see if I can reproduce in rawhide and figure out the root cause.
You can follow these instructions to test locally in mock if your package builds with Python 3.8: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/ Steps to reproduce: 0. save that config for example into ~/.config/mock/fedora-rawhide-x86_64-python3.8.cfg 1. $ fedpkg clone libfreenect && cd libfreenect 2. $ rm -f* .src.rpm 3. $ fedpkg srpm 4. $ mock -r ~/.config/mock/fedora-rawhide-x86_64-python3.8.cfg --enablerepo=local ./*.src.rpm
I think this bug is a duplicate of 1721876