diff --git a/cv2/__init__.py b/cv2/__init__.py index ee8cd254ea104712cf1a8610d6f39aaebfc5ab59..1207db957fe336759dd30a56a5bce51f8be3abb7 100644 --- a/cv2/__init__.py +++ b/cv2/__init__.py @@ -9,7 +9,7 @@ from .data import * # this makes them available globals().update(importlib.import_module('cv2.cv2').__dict__) -if sys.platform == 'darwin': +if sys.platform == 'darwin' or sys.platform.startswith("linux"): os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = os.path.join( os.path.dirname(os.path.abspath(__file__)), 'qt', 'plugins' ) diff --git a/docker/manylinux2014/Dockerfile_i686 b/docker/manylinux2014/Dockerfile_i686 index 68678e8c86fb7b46d61b6fb9660973b3a293ea01..e9e49d617b62a5af2719a1de790948800e13d404 100644 --- a/docker/manylinux2014/Dockerfile_i686 +++ b/docker/manylinux2014/Dockerfile_i686 @@ -68,4 +68,10 @@ RUN curl -O -L https://github.com/Kitware/CMake/releases/download/v3.17.0/cmake- ENV PKG_CONFIG_PATH /usr/local/lib/pkgconfig:/root/ffmpeg_build/lib/pkgconfig ENV LDFLAGS -L/root/ffmpeg_build/lib + +# in i686, yum metadata ends up with slightly wrong timestamps +# which inhibits its update +# https://github.com/skvark/opencv-python/issues/148 +RUN yum clean all + ENV PATH "$HOME/bin:$PATH" diff --git a/setup.py b/setup.py index 24aa01162e67f5298b9055c9a213122fb2d71357..d5e524dd86e23f4117304991e5f2352f75188791 100644 --- a/setup.py +++ b/setup.py @@ -154,6 +154,11 @@ def main(): (r"lib/qt/plugins/platforms/libqcocoa\.dylib") ] + if sys.platform.startswith("linux") and not build_headless: + rearrange_cmake_output_data["cv2.qt.plugins.platforms"] = [ + (r"lib/qt/plugins/platforms/libqxcb\.so") + ] + if build_headless: # it seems that cocoa cannot be disabled so on macOS the package is not truly headless cmake_args.append("-DWITH_WIN32UI=OFF")