Skip to content

Build with pip3: No such file or directory: '_skbuild/linux-x86_64-3.9/cmake-install/python/cv2/__init__.py' #663

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
Yvan-Masson opened this issue May 20, 2022 · 1 comment
Assignees

Comments

@Yvan-Masson
Copy link

Hi,

Expected behaviour

I am trying to build a small software using Flatpak. One of the dependencies is opencv-headless (I chose blindly the latest version 4.5.5.64, maybe a previous version would be a better choice) and needs to be built with pip (22.0.4, Python 3.9) during the Flatpak build process.

Actual behaviour

Unfortunately, while other dependencies build successfully, OpenCV build fails with the following error:

  Configuring Project                                                                                                                                                  
    Working directory:                                                                                                                                                 
      /tmp/pip-install-lo__bgyw/opencv-python-headless_aabd86c2a569434cb5951bb7f10731d3/_skbuild/linux-x86_64-3.9/cmake-build                                          
    Command:                                                                                                                                                           
      cmake /tmp/pip-install-lo__bgyw/opencv-python-headless_aabd86c2a569434cb5951bb7f10731d3/opencv -G Ninja -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pip-install-lo__bgyw/ope
ncv-python-headless_aabd86c2a569434cb5951bb7f10731d3/_skbuild/linux-x86_64-3.9/cmake-install -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 -DPYTHON_VERSION_STRING:STRI
NG=3.9.9 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.9 -DPYTHON_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libpython3.9.so -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PA
TH:PATH=/app/lib/python3.9/site-packages/skbuild/resources/cmake -DPYTHON3_EXECUTABLE=/usr/bin/python3 -DPYTHON3_INCLUDE_DIR=/usr/include/python3.9 -DPYTHON3_LIBRARY=/
usr/lib/x86_64-linux-gnu/libpython3.9.so -DBUILD_opencv_python3=ON -DBUILD_opencv_python2=OFF -DBUILD_opencv_java=OFF -DOPENCV_PYTHON3_INSTALL_PATH=python -DINSTALL_CR
EATE_DISTRIB=ON -DBUILD_opencv_apps=OFF -DBUILD_opencv_freetype=OFF -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_DOCS=OFF -DPYTHON3_LIMITED
_API=ON -DBUILD_OPENEXR=ON -DBUILD_PNG=ON -DWITH_WIN32UI=OFF -DWITH_QT=OFF -DWITH_GTK=OFF -DCMAKE_BUILD_TYPE:STRING=Release                                            
                                                                                                                                                                       
  Copying files from CMake output                                                                                                                                      
  Traceback (most recent call last):                                                                                                                                   
    File "/usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in <module>                                                        
      main()                                                                                                                                                           
    File "/usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main                                                            
      json_out['return_val'] = hook(**hook_input['kwargs'])                                                                                                            
    File "/usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 261, in build_wheel                                                     
      return _build_backend().build_wheel(wheel_directory, config_settings,                                                                                            
    File "/usr/lib/python3.9/site-packages/setuptools/build_meta.py", line 230, in build_wheel                                                                         
      return self._build_with_temp_dir(['bdist_wheel'], '.whl',                                                                                                        
    File "/usr/lib/python3.9/site-packages/setuptools/build_meta.py", line 215, in _build_with_temp_dir                                                                
      self.run_setup()                                                                                                                                                 
    File "/usr/lib/python3.9/site-packages/setuptools/build_meta.py", line 267, in run_setup                                                                           
      super(_BuildMetaLegacyBackend,                                                                                                                                   
    File "/usr/lib/python3.9/site-packages/setuptools/build_meta.py", line 158, in run_setup                                                                           
      exec(compile(code, __file__, 'exec'), locals())                                                                                                                  
    File "setup.py", line 503, in <module>                                                                                                                             
      main()                                                                                                                                                           
    File "setup.py", line 240, in main                                                                                                                                 
      skbuild.setup(                                                                                                                                                   
    File "/app/lib/python3.9/site-packages/skbuild/setuptools_wrap.py", line 676, in setup                                                                                   _classify_installed_files(                                                                                                                                           File "setup.py", line 373, in _classify_installed_files_override                                                                                                         with open(os.path.join(cmake_install_dir, "python", "cv2", "__init__.py"), 'r') as opencv_init:
  FileNotFoundError: [Errno 2] No such file or directory: '_skbuild/linux-x86_64-3.9/cmake-install/python/cv2/__init__.py'
  error: subprocess-exited-with-error
   
  × Building wheel for opencv-python-headless (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> See above for output.
   
  note: This error originates from a subprocess, and is likely not a problem with pip.
  full command: /usr/bin/python3 /usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpbnt_xnkn
  cwd: /tmp/pip-install-lo__bgyw/opencv-python-headless_aabd86c2a569434cb5951bb7f10731d3
  Building wheel for opencv-python-headless (pyproject.toml) ... error
  ERROR: Failed building wheel for opencv-python-headless

It looks very much like #600, but in my case pip seems new enough and I suppose I can't change install location (as suggested in #600 (comment)).

Maybe I am missing something obvious. Any suggestion is welcome (maybe try building with an older version, but which one?).

Regards,
Yvan

@Yvan-Masson
Copy link
Author

Still trying to build my software with Flatpak, I ended up copying manifest from another app which builds opencv without some options instead of opencv-headless. As build works like that, I suppose you can close this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants