Skip to content
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

Autopackaging and publish the wheels #1581

Closed

Conversation

sanguinariojoe
Copy link
Contributor

BEFORE MERGING THIS:

@cary-ilm you should go to https://pypi.org/manage/account/token/?selected_project=OpenEXR and create a token with the name OPENEXR_PYPI_API and the scope Project: openexr. Take good note of it, because it will be shown just once. Then on GitHUB you should go to Settings/Secrets and variables/Actions, click on new repository secret and create it with the very same name, OPENEXR_PYPI_API, and the token you copied from pypi.

@everyone, make sure you have the release ready. More info below.

RATIONALE:

On every single pull request and push (which is affecting the paths you set) the wheels for the standard/native archs will be built and test. Even an emulated one. That job would take ~15 minutes

Only the pushes on main branch will trigger the building for all the archs and autopublishing on pypi. That task would take about 2 hours.

Watch out! When you publish a file on pypi it cannot be overwritten. NEVER AND EVER. Thus you should never dev on main branch. Of course you can change this behavior. just editing the workflow. Just bear this on mind, a published file CANNOT be overwritten.

Note: The pipeline will fail until merged because of this
Note: Please, do not do this when you know someone is working on that

@sanguinariojoe
Copy link
Contributor Author

BTW, to avoid some issues I created that workflow to check the version

@sanguinariojoe
Copy link
Contributor Author

That's all from my side! I hope all this helps you out!

Feel free to reach me out in any case. Meanwhile I will move to other projects I really need to attend

@cary-ilm
Copy link
Member

Thanks, I'll look through this more carefully shortly.

The version check is failing with:

Version v3.2.0 already exists
Please, increase the version at src/lib/OpenEXRCore/openexr_version.h

Do you know what's going on there?

Also, the DCO (Developer Certificate of Origin) check has failed, since the ASWF requires signed commits. Could you kindly resubmit with "commit -s"? This applies to all commits, so it may be easier to squash all your commit history down into a single commit created with -s. Apologies for this hassle.

Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
…014)

Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
Signed-off-by: Jose Luis Cercos-Pita <jlcercos@gmail.com>
@sanguinariojoe
Copy link
Contributor Author

Also, the DCO (Developer Certificate of Origin) check has failed, since the ASWF requires signed commits. Could you kindly resubmit with "commit -s"? This applies to all commits, so it may be easier to squash all your commit history down into a single commit created with -s. Apologies for this hassle.

The commits are signed now

The version check is failing with:

Version v3.2.0 already exists
Please, increase the version at src/lib/OpenEXRCore/openexr_version.h

Do you know what's going on there?

The version checker is just checking that there is no a tag with the same version than the one you are trying to merge on main. Of course, the version checking and the packages publishing shall reflect the way you guys work and create releases.

Along this line, the most popular way to go is having a dev branch where the commits are landing (first commit after each release is always increasing the version), and a main branch where just releases are merged. Then the CI/CD is taking care of creating a tag & release, as well as crafting & publishing the Python wheels.

The merits of that approach are:

  • The versions are never colliding. Right now your main branch is still on version 3.2.0, while you already released the version 3.2.1. That means someone downloading and installing from the repo would break the system packages (among other problems)
  • Users do not need to know nothing about your protocol, they can just clone main and they will always have the latest stable version
  • Since main is only receiving pull requests, having conflicts is slightly harder
  • Everything can be easily automated by CI/CD

Anyway, it seems to me that you are more used to develop on main, and then have separate branches to cherry-pick the commits for the next release. I suppose you create your tags and releases manually. If I am right, you can just simply get rid of .github/workflows/check-version.yml and modify .github/workflows/python-wheels.yml to trigger the publishing (and the emulated wheels building) when tags are created.

I strongly recommend you to give it a thought. Anyway, it is something you have to decide and do yourselves.

@barnabyrobson
Copy link
Contributor

Note: Please, do not do this when you know someone is working on that

Hi @sanguinariojoe .. I apologize if I did something wrong. But I don't quite understand what I did wrong.

Was there a ban on making changes as you worked on this ?

@sanguinariojoe
Copy link
Contributor Author

sanguinariojoe commented Oct 19, 2023 via email

@monajalal
Copy link

Do you know when is the release date?
I have an error for importing OpenEXR

sanguinariojoe/pip-openexr#34 (comment)

@meshula meshula added the Needs Discussion To be discussed in the technical steering committee label Oct 26, 2023
@sanguinariojoe
Copy link
Contributor Author

Hey guys!

I am archiving my repo (/~https://github.com/sanguinariojoe/pip-openexr) since I definitely do not want to address problems there

@meshula
Copy link
Contributor

meshula commented Nov 4, 2023

@sanguinariojoe @cary-ilm It looks like we need to make a decision on

Anyway, it seems to me that you are more used to develop on main, and then have separate branches to cherry-pick the commits for the next release. I suppose you create your tags and releases manually. If I am right, you can just simply get rid of .github/workflows/check-version.yml and modify .github/workflows/python-wheels.yml to trigger the publishing (and the emulated wheels building) when tags are created.

to move ahead? The proposal sounds like the right idea to me. If it succeeds then we are ready to land?

@sanguinariojoe
Copy link
Contributor Author

to move ahead? The proposal sounds like the right idea to me. If it succeeds then we are ready to land?

If you guys confirm me you wanna go that way (triggering the pipy auto-publishing when releases are created), then I can correct the CI/CD in no time so you can merge. After that you'll be set.

@cary-ilm , please let me know

@cary-ilm
Copy link
Member

cary-ilm commented Nov 6, 2023

Apologies for the delay, but I haven't had time to look this over thoroughly enough yet, but I will get to it in the next few days.

@mgbvox
Copy link

mgbvox commented Nov 21, 2023

What is the status on this?

@cary-ilm
Copy link
Member

I'll have time to work on this during the first week of December, I hope to resolve it then and make an official release.

name: python-wheels-MacOS_universal2
path: dist/

- name: Publish package to TestPyPI
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this actually TestPyPI?

with:
name: "Python wheels"
path: ./wheelhouse/*.whl
password: ${{ secrets.OPENEXR_PYPI_API }}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this is true – the wheels are OS dependent?

@monajalal
Copy link

monajalal commented Dec 19, 2023

Is there any update on this? I am using Python 3.5m which is bundled with Blender 2.79a in in a docker that has base Ubuntu 18.04 inside native Ubuntu 22.04.

This is the only package that doesn't get installed:

root@fae597dbdb79:/home/pvnet-rendering# /home/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/pip3 install OpenEXR
DEPRECATION: Python 3.5 reached the end of its life on September 13th, 2020. Please upgrade your Python as Python 3.5 is no longer maintained. pip 21.0 will drop support for Python 3.5 in January 2021. pip 21.0 will remove support for this functionality.
Collecting OpenEXR
  Using cached OpenEXR-1.3.9.tar.gz (13 kB)
Building wheels for collected packages: OpenEXR
  Building wheel for OpenEXR (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-mduho4ah
       cwd: /tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/
  Complete output (17 lines):
  Looking for libOpenEXR...
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.5
  copying Imath.py -> build/lib.linux-x86_64-3.5
  running build_ext
  building 'OpenEXR' extension
  creating build/temp.linux-x86_64-3.5
  gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/include/OpenEXR -I/usr/local/include/OpenEXR -I/opt/local/include/OpenEXR -I/usr/include/Imath -I/usr/local/include/Imath -I/opt/local/include/Imath -I/home/blender-2.79a-linux-glibc219-x86_64/2.79/python/include/python3.5m -c OpenEXR.cpp -o build/temp.linux-x86_64-3.5/OpenEXR.o -g -DVERSION="1.3.9"
  cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
  OpenEXR.cpp:1:10: fatal error: Python.h: No such file or directory
   #include <Python.h>
            ^~~~~~~~~~
  compilation terminated.
  error: command 'gcc' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for OpenEXR
  Running setup.py clean for OpenEXR
Failed to build OpenEXR
Installing collected packages: OpenEXR
    Running setup.py install for OpenEXR ... error
    ERROR: Command errored out with exit status 1:
     command: /home/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-u2_7y4fa/install-record.txt --single-version-externally-managed --compile --install-headers /home/blender-2.79a-linux-glibc219-x86_64/2.79/python/include/python3.5m/OpenEXR
         cwd: /tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/
    Complete output (17 lines):
    Looking for libOpenEXR...
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.5
    copying Imath.py -> build/lib.linux-x86_64-3.5
    running build_ext
    building 'OpenEXR' extension
    creating build/temp.linux-x86_64-3.5
    gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/include/OpenEXR -I/usr/local/include/OpenEXR -I/opt/local/include/OpenEXR -I/usr/include/Imath -I/usr/local/include/Imath -I/opt/local/include/Imath -I/home/blender-2.79a-linux-glibc219-x86_64/2.79/python/include/python3.5m -c OpenEXR.cpp -o build/temp.linux-x86_64-3.5/OpenEXR.o -g -DVERSION="1.3.9"
    cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
    OpenEXR.cpp:1:10: fatal error: Python.h: No such file or directory
     #include <Python.h>
              ^~~~~~~~~~
    compilation terminated.
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /home/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ff4ixufr/openexr_e96f1121b9af49e8ba0e6828abe51305/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-u2_7y4fa/install-record.txt --single-version-externally-managed --compile --install-headers /home/blender-2.79a-linux-glibc219-x86_64/2.79/python/include/python3.5m/OpenEXR Check the logs for full command output.

@cary-ilm
Copy link
Member

I'm getting to this now after a lengthy delay, I hope to have an update shortly.

@monajalal
Copy link

@cary-ilm thanks a lot for looking into this

@monajalal
Copy link

@cary-ilm just a note that I fixed the formatting for Python 3.5m and still same error:

root@fae597dbdb79:/home/pip-openexr# /home/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m setup.py install
Looking for libOpenEXR...
running install
running bdist_egg
running egg_info
writing OpenEXR.egg-info/PKG-INFO
writing top-level names to OpenEXR.egg-info/top_level.txt
writing dependency_links to OpenEXR.egg-info/dependency_links.txt
writing manifest file 'OpenEXR.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
building 'OpenEXR' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DPYOPENEXR_VERSION_MAJOR=1 -DPYOPENEXR_VERSION_MINOR=3 -DPYOPENEXR_VERSION_PATCH=10 -I/usr/include/OpenEXR -I/usr/local/include/OpenEXR -I/opt/local/include/OpenEXR -I/usr/include/Imath -I/usr/local/include/Imath -I/opt/local/include/Imath -I/home/blender-2.79a-linux-glibc219-x86_64/2.79/python/include/python3.5m -c OpenEXR.cpp -o build/temp.linux-x86_64-3.5/OpenEXR.o
cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
OpenEXR.cpp:1:10: fatal error: Python.h: No such file or directory
 #include <Python.h>
          ^~~~~~~~~~
compilation terminated.
error: command 'gcc' failed with exit status 1

in root@fae597dbdb79:/home/pip-openexr# vi setup.py


#VERSION = f"{VERSION_MAJOR}.{VERSION_MINOR}.{VERSION_PATCH}"
VERSION = "{}.{}.{}".format(VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH)


and

'''
definitions = [
    ("PYOPENEXR_VERSION_MAJOR", f"{VERSION_MAJOR}"),
    ("PYOPENEXR_VERSION_MINOR", f"{VERSION_MINOR}"),
    ("PYOPENEXR_VERSION_PATCH", f"{VERSION_PATCH}"),
]

'''


definitions = [
    ("PYOPENEXR_VERSION_MAJOR", "{}".format(VERSION_MAJOR)),
    ("PYOPENEXR_VERSION_MINOR", "{}".format(VERSION_MINOR)),
    ("PYOPENEXR_VERSION_PATCH", "{}".format(VERSION_PATCH)),
]

@cary-ilm
Copy link
Member

@monajalal, I'm still working my way through a fresh installation of the OpenEXR bindings and the various related issues, but one thing to note is that the bindings from sanguinariojoe/pip-openexr have been folded into AcademySoftwareFoundation/OpenEXR and that original repo archived so any new fixes will go into the new repo. If I'm reading your logs correctly, it looks like you're building the pip-openexr project. Would it be possible for you to build the new version of the bindings? If you're committed to the old repo, I'm not familiar enough with it to offer much guidance.

@monajalal
Copy link

@cary-ilm any chance you could guide me how to build the python package for OpenEXR using /~https://github.com/AcademySoftwareFoundation/openexr ?

@cary-ilm
Copy link
Member

@monajalal, this may change so it's yet to make it into the documentation, but do this:
`

% cmake -DOPENEXR_BUILD_PYTHON=ON
`

@monajalal
Copy link

monajalal commented Dec 20, 2023

@cary-ilm

Thank you. Could you please guide how to force it to use the Python here instead of Python 3.6?

# /workspace/ubuntu18.04/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m                       
Python 3.5.3 (default, May 18 2017, 14:40:48) 
[GCC 5.4.1 20161019] on linux
Type "help", "copyright", "credits" or "license" for more information.
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# rm -rf build/ ; mkdir build ; cd build
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cmake ..   -DOPENEXR_BUILD_PYTHON=ON 
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- 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
-- Setting build type to 'Release' as none was specified.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE  
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
-- libdeflate was not found, installing from /~https://github.com/ebiggers/libdeflate.git (v1.18)
CMake Warning at cmake/OpenEXRSetup.cmake:241 (find_package):
  By not providing "FindImath.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Imath", but
  CMake did not find one.

  Could not find a package configuration file provided by "Imath" (requested
  version 3.1) with any of the following names:

    ImathConfig.cmake
    imath-config.cmake

  Add the installation prefix of "Imath" to CMAKE_PREFIX_PATH or set
  "Imath_DIR" to a directory containing one of the above files.  If "Imath"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:56 (include)


-- Imath was not found, installing from /~https://github.com/AcademySoftwareFoundation/Imath.git (main)
-- Imath is configuring as a cmake sub project
-- Configure Imath 3.2.0-dev, library API version: 30.3.2.0
-- Imath pkg-config generation enabled
-- Looking for sin in m
-- Looking for sin in m - found
-- Imath interface dirs $<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-src/src/Imath>;$<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-build/config>;$<INSTALL_INTERFACE:include>;$<INSTALL_INTERFACE:include/Imath>
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN - Success
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX - Success
-- Looking for include file ucontext.h
-- Looking for include file ucontext.h - found
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT - Success
-- Looking for include file semaphore.h
-- Looking for include file semaphore.h - found
-- Looking for sem_init in pthread
-- Looking for sem_init in pthread - found
-- OpenEXR pkg-config generation enabled
-- Configure OpenEXR 3.3.0-dev, library API version: 31.3.3.0
-- Found Python3: /usr/bin/python3.6 (found version "3.6.9") found components:  Interpreter 
-- adding bin tests
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GrayRampsHorizontal.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Garden.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/ColorCodedLevels.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesLatLong.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesCube.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Flowers.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiView/Adjuster.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GammaChart.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/singlepart.0001.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/LeftView/Balls.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/Stereo/Trunks.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/multipart.0001.exr
-- clang-format not found.
CMake Error at src/wrappers/python/CMakeLists.txt:18 (include_directories):
  include_directories given empty-string as include directory.


-- Configuring incomplete, errors occurred!
See also "/workspace/ubuntu18.04/openexr/build/CMakeFiles/CMakeOutput.log".
See also "/workspace/ubuntu18.04/openexr/build/CMakeFiles/CMakeError.log".
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# vi src/wrappers/python/CMakeLists.txt
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cd ..
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# vi src/wrappers/python/CMakeLists.txt
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# rm -rf build/ ; mkdir build ; cd build
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cmake ..   -DOPENEXR_BUILD_PYTHON=ON 
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- 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
-- Setting build type to 'Release' as none was specified.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE  
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
-- libdeflate was not found, installing from /~https://github.com/ebiggers/libdeflate.git (v1.18)
CMake Warning at cmake/OpenEXRSetup.cmake:241 (find_package):
  By not providing "FindImath.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Imath", but
  CMake did not find one.

  Could not find a package configuration file provided by "Imath" (requested
  version 3.1) with any of the following names:

    ImathConfig.cmake
    imath-config.cmake

  Add the installation prefix of "Imath" to CMAKE_PREFIX_PATH or set
  "Imath_DIR" to a directory containing one of the above files.  If "Imath"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:56 (include)


-- Imath was not found, installing from /~https://github.com/AcademySoftwareFoundation/Imath.git (main)
-- Imath is configuring as a cmake sub project
-- Configure Imath 3.2.0-dev, library API version: 30.3.2.0
-- Imath pkg-config generation enabled
-- Looking for sin in m
-- Looking for sin in m - found
-- Imath interface dirs $<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-src/src/Imath>;$<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-build/config>;$<INSTALL_INTERFACE:include>;$<INSTALL_INTERFACE:include/Imath>
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN - Success
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX - Success
-- Looking for include file ucontext.h
-- Looking for include file ucontext.h - found
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT - Success
-- Looking for include file semaphore.h
-- Looking for include file semaphore.h - found
-- Looking for sem_init in pthread
-- Looking for sem_init in pthread - found
-- OpenEXR pkg-config generation enabled
-- Configure OpenEXR 3.3.0-dev, library API version: 31.3.3.0
-- Found Python3: /usr/bin/python3.6 (found version "3.6.9") found components:  Interpreter 
-- adding bin tests
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GrayRampsHorizontal.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Garden.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/ColorCodedLevels.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesLatLong.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesCube.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Flowers.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiView/Adjuster.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GammaChart.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/singlepart.0001.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/LeftView/Balls.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/Stereo/Trunks.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/multipart.0001.exr
-- clang-format not found.
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so (found version "3.6.9") 
-- Found PythonInterp: /usr/local/bin/python3 (found version "3.5.3") 
-- Configuring done
-- Generating done
-- Build files have been written to: /workspace/ubuntu18.04/openexr/build

I see this file is looking for it

root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# src/wrappers/python/CMakeLists.txt

@monajalal
Copy link

monajalal commented Dec 20, 2023

@cary-ilm

I might have gotten it workig please let me know if it makes any sense -- I am confused because it also said
-- Found Python3: /usr/bin/python3.6 (found version "3.6.9") found components: Interpreter

root@433bd88f1eac:/workspace/ubuntu18.04/openexr# vi src/wrappers/python/CMakeLists.txt
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# rm -rf build/ ; mkdir build ; cd build
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cmake ..   -DOPENEXR_BUILD_PYTHON=ON 
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- 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
-- Setting build type to 'Release' as none was specified.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE  
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
-- libdeflate was not found, installing from /~https://github.com/ebiggers/libdeflate.git (v1.18)
CMake Warning at cmake/OpenEXRSetup.cmake:241 (find_package):
  By not providing "FindImath.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Imath", but
  CMake did not find one.

  Could not find a package configuration file provided by "Imath" (requested
  version 3.1) with any of the following names:

    ImathConfig.cmake
    imath-config.cmake

  Add the installation prefix of "Imath" to CMAKE_PREFIX_PATH or set
  "Imath_DIR" to a directory containing one of the above files.  If "Imath"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:56 (include)


-- Imath was not found, installing from /~https://github.com/AcademySoftwareFoundation/Imath.git (main)
-- Imath is configuring as a cmake sub project
-- Configure Imath 3.2.0-dev, library API version: 30.3.2.0
-- Imath pkg-config generation enabled
-- Looking for sin in m
-- Looking for sin in m - found
-- Imath interface dirs $<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-src/src/Imath>;$<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-build/config>;$<INSTALL_INTERFACE:include>;$<INSTALL_INTERFACE:include/Imath>
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN - Success
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX - Success
-- Looking for include file ucontext.h
-- Looking for include file ucontext.h - found
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT - Success
-- Looking for include file semaphore.h
-- Looking for include file semaphore.h - found
-- Looking for sem_init in pthread
-- Looking for sem_init in pthread - found
-- OpenEXR pkg-config generation enabled
-- Configure OpenEXR 3.3.0-dev, library API version: 31.3.3.0
-- Found Python3: /usr/bin/python3.6 (found version "3.6.9") found components:  Interpreter 
-- adding bin tests
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GrayRampsHorizontal.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Garden.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/ColorCodedLevels.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesLatLong.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesCube.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Flowers.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiView/Adjuster.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GammaChart.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/singlepart.0001.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/LeftView/Balls.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/Stereo/Trunks.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/multipart.0001.exr
-- clang-format not found.
-- Found Python: /workspace/ubuntu18.04/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m (found version "3.5.3") found components:  Interpreter 
CMake Error at src/wrappers/python/CMakeLists.txt:20 (include_directories):
  include_directories given empty-string as include directory.


-- Configuring incomplete, errors occurred!
See also "/workspace/ubuntu18.04/openexr/build/CMakeFiles/CMakeOutput.log".
See also "/workspace/ubuntu18.04/openexr/build/CMakeFiles/CMakeError.log".
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cd ..
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# vi src/wrappers/python/CMakeLists.txt
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# rm -rf build/ ; mkdir build ; cd build
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cmake ..   -DOPENEXR_BUILD_PYTHON=ON 
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- 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
-- Setting build type to 'Release' as none was specified.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE  
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
-- libdeflate was not found, installing from /~https://github.com/ebiggers/libdeflate.git (v1.18)
CMake Warning at cmake/OpenEXRSetup.cmake:241 (find_package):
  By not providing "FindImath.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Imath", but
  CMake did not find one.

  Could not find a package configuration file provided by "Imath" (requested
  version 3.1) with any of the following names:

    ImathConfig.cmake
    imath-config.cmake

  Add the installation prefix of "Imath" to CMAKE_PREFIX_PATH or set
  "Imath_DIR" to a directory containing one of the above files.  If "Imath"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:56 (include)


-- Imath was not found, installing from /~https://github.com/AcademySoftwareFoundation/Imath.git (main)
-- Imath is configuring as a cmake sub project
-- Configure Imath 3.2.0-dev, library API version: 30.3.2.0
-- Imath pkg-config generation enabled
-- Looking for sin in m
-- Looking for sin in m - found
-- Imath interface dirs $<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-src/src/Imath>;$<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-build/config>;$<INSTALL_INTERFACE:include>;$<INSTALL_INTERFACE:include/Imath>
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN - Success
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX - Success
-- Looking for include file ucontext.h
-- Looking for include file ucontext.h - found
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT - Success
-- Looking for include file semaphore.h
-- Looking for include file semaphore.h - found
-- Looking for sem_init in pthread
-- Looking for sem_init in pthread - found
-- OpenEXR pkg-config generation enabled
-- Configure OpenEXR 3.3.0-dev, library API version: 31.3.3.0
-- Found Python3: /usr/bin/python3.6 (found version "3.6.9") found components:  Interpreter 
-- adding bin tests
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GrayRampsHorizontal.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Garden.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/ColorCodedLevels.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesLatLong.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesCube.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Flowers.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiView/Adjuster.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GammaChart.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/singlepart.0001.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/LeftView/Balls.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/Stereo/Trunks.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/multipart.0001.exr
-- clang-format not found.
CMake Error at src/wrappers/python/CMakeLists.txt:19 (include_directories):
  include_directories given empty-string as include directory.


-- Configuring incomplete, errors occurred!
See also "/workspace/ubuntu18.04/openexr/build/CMakeFiles/CMakeOutput.log".
See also "/workspace/ubuntu18.04/openexr/build/CMakeFiles/CMakeError.log".
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# vi src/wrappers/python/CMakeLists.txt
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cd ..
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# vi src/wrappers/python/CMakeLists.txt
root@433bd88f1eac:/workspace/ubuntu18.04/openexr# rm -rf build/ ; mkdir build ; cd build
root@433bd88f1eac:/workspace/ubuntu18.04/openexr/build# cmake ..   -DOPENEXR_BUILD_PYTHON=ON 
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- 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
-- Setting build type to 'Release' as none was specified.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE  
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
-- libdeflate was not found, installing from /~https://github.com/ebiggers/libdeflate.git (v1.18)
CMake Warning at cmake/OpenEXRSetup.cmake:241 (find_package):
  By not providing "FindImath.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Imath", but
  CMake did not find one.

  Could not find a package configuration file provided by "Imath" (requested
  version 3.1) with any of the following names:

    ImathConfig.cmake
    imath-config.cmake

  Add the installation prefix of "Imath" to CMAKE_PREFIX_PATH or set
  "Imath_DIR" to a directory containing one of the above files.  If "Imath"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:56 (include)


-- Imath was not found, installing from /~https://github.com/AcademySoftwareFoundation/Imath.git (main)
-- Imath is configuring as a cmake sub project
-- Configure Imath 3.2.0-dev, library API version: 30.3.2.0
-- Imath pkg-config generation enabled
-- Looking for sin in m
-- Looking for sin in m - found
-- Imath interface dirs $<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-src/src/Imath>;$<BUILD_INTERFACE:/workspace/ubuntu18.04/openexr/build/_deps/imath-build/config>;$<INSTALL_INTERFACE:include>;$<INSTALL_INTERFACE:include/Imath>
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN
-- Performing Test OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN - Success
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX
-- Performing Test OPENEXR_IMF_HAVE_GCC_INLINE_ASM_AVX - Success
-- Looking for include file ucontext.h
-- Looking for include file ucontext.h - found
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT
-- Performing Test IEX_HAVE_CONTROL_REGISTER_SUPPORT - Success
-- Looking for include file semaphore.h
-- Looking for include file semaphore.h - found
-- Looking for sem_init in pthread
-- Looking for sem_init in pthread - found
-- OpenEXR pkg-config generation enabled
-- Configure OpenEXR 3.3.0-dev, library API version: 31.3.3.0
-- Found Python3: /usr/bin/python3.6 (found version "3.6.9") found components:  Interpreter 
-- adding bin tests
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GrayRampsHorizontal.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Garden.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/ColorCodedLevels.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesLatLong.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiResolution/WavyLinesCube.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/LuminanceChroma/Flowers.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/MultiView/Adjuster.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/Rec709.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ_YC.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Chromaticities/XYZ.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/TestImages/GammaChart.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/singlepart.0001.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/LeftView/Balls.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/v2/Stereo/Trunks.exr
-- Downloading https://raw.githubusercontent.com/AcademySoftwareFoundation/openexr-images/v1.0/Beachball/multipart.0001.exr
-- clang-format not found.
-- Found Python: /workspace/ubuntu18.04/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m (found version "3.5.3") found components:  Interpreter 
-- Configuring done
-- Generating done
-- Build files have been written to: /workspace/ubuntu18.04/openexr/build

I change this file src/wrappers/python/CMakeLists.txt
to

# SPDX-License-Identifier: BSD-3-Clause
# Copyright Contributors to the OpenEXR Project.

if(NOT "${CMAKE_PROJECT_NAME}" STREQUAL "OpenEXR")
  cmake_minimum_required(VERSION 3.12)
  project(PyOpenEXR)
  find_package(OpenEXR)
endif()

add_library (PyOpenEXR SHARED OpenEXR.cpp)

set (Python_ADDITIONAL_VERSIONS 3)
#find_package (PythonLibs REQUIRED)
#find_package (PythonInterp REQUIRED)
set(Python_EXECUTABLE /workspace/ubuntu18.04/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m)
set(Python_INCLUDE_DIRS /workspace/ubuntu18.04/blender-2.79a-linux-glibc219-x86_64/2.79/python/include/python3.5m)
set(Python_LIBRARIES "")
find_package(Python COMPONENTS Interpreter)
#include_directories ("${PYTHON_INCLUDE_DIRS}")

set_target_properties (PyOpenEXR PROPERTIES PREFIX "")
set_target_properties (PyOpenEXR PROPERTIES OUTPUT_NAME "OpenEXR")
set_target_properties (PyOpenEXR PROPERTIES SUFFIX ".so")

target_link_libraries (PyOpenEXR "${PYTHON_LIBRARIES}" OpenEXR::OpenEXR)

Unfortunately, still no module found error for OpenEXR

root@433bd88f1eac:/workspace/ubuntu18.04/pvnet-rendering# /workspace/ubuntu18.04/blender-2.79a-linux-glibc219-x86_64/2.79/python/bin/python3.5m  run.py --type rendering
/workspace/ubuntu18.04/blender-2.79a-linux-glibc219-x86_64/2.79/python/lib/python3.5/site-packages/numpy/__init__.py
Traceback (most recent call last):
  File "run.py", line 24, in <module>
    globals()['run_' + args.type]()
  File "run.py", line 11, in run_rendering
    from blender.render_utils import Renderer, YCBRenderer
  File "/workspace/ubuntu18.04/pvnet-rendering/blender/render_utils.py", line 9, in <module>
    import OpenEXR
ImportError: No module named 'OpenEXR'

@cary-ilm
Copy link
Member

Following up on this, this PR has been reformulated as #1629, which replaces the setuptools wheel building configuration with scikit-build-core, since it has better native support for building via cmake.

@cary-ilm cary-ilm closed this Feb 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs Discussion To be discussed in the technical steering committee
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants