Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1923344

Summary: OpenColorIO: FTBFS in Fedora rawhide/f34
Product: [Fedora] Fedora Reporter: Fedora Release Engineering <releng>
Component: OpenColorIOAssignee: Richard Shaw <hobbes1069>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 34CC: hobbes1069, law
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-06-09 02:35:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1914689    
Bug Blocks: 1868278    
Attachments:
Description Flags
build.log
none
root.log
none
state.log none

Description Fedora Release Engineering 2021-02-01 16:37:32 UTC
OpenColorIO failed to build from source in Fedora rawhide/f34

https://koji.fedoraproject.org/koji/taskinfo?taskID=60906937


For details on the mass rebuild see:

https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Please fix OpenColorIO at your earliest convenience and set the bug's status to
ASSIGNED when you start fixing it. If the bug remains in NEW state for 8 weeks,
OpenColorIO will be orphaned. Before branching of Fedora 35,
OpenColorIO will be retired, if it still fails to build.

For more details on the FTBFS policy, please visit:
https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/

Comment 1 Fedora Release Engineering 2021-02-01 16:37:35 UTC
Created attachment 1753076 [details]
build.log

file build.log too big, will only attach last 32768 bytes

Comment 2 Fedora Release Engineering 2021-02-01 16:37:36 UTC
Created attachment 1753077 [details]
root.log

file root.log too big, will only attach last 32768 bytes

Comment 3 Fedora Release Engineering 2021-02-01 16:37:37 UTC
Created attachment 1753078 [details]
state.log

Comment 4 Richard Shaw 2021-02-07 12:01:52 UTC
This will get fixed with the recent 2.0 release which needs python-sphinx-tabs.

Comment 5 Ben Cotton 2021-02-09 15:48:07 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 34 development cycle.
Changing version to 34.

Comment 6 Jeff Law 2021-02-22 22:26:56 UTC
I'm confident this is a package bug.  GCC is emitting a diagnostic for this code in ImageDesc.cpp

       if(const PackedImageDesc * packedImg = dynamic_cast<const PackedImageDesc*>(&img))
        {
            os << "<PackedImageDesc ";
            os << "data=" << packedImg->getData() << ", ";
            os << "width=" << packedImg->getWidth() << ", ";
            os << "height=" << packedImg->getHeight() << ", ";
            os << "numChannels=" << packedImg->getNumChannels() << ", ";
            os << "chanStrideBytes=" << packedImg->getChanStrideBytes() << ", ";
            os << "xStrideBytes=" << packedImg->getXStrideBytes() << ", ";
            os << "yStrideBytes=" << packedImg->getYStrideBytes() << "";
            os << ">";
        }
        else if(const PlanarImageDesc * planarImg = dynamic_cast<const PlanarImageDesc*>(&img))
        {
            os << "<PlanarImageDesc ";
            os << "rData=" << planarImg->getRData() << ", ";
            os << "gData=" << planarImg->getGData() << ", ";
            os << "bData=" << planarImg->getBData() << ", ";
            os << "aData=" << planarImg->getAData() << ", ";
            os << "width=" << packedImg->getWidth() << ", ";
            os << "height=" << packedImg->getHeight() << ", ";
            os << "yStrideBytes=" << planarImg->getYStrideBytes() << "";
            os << ">";
        }
 
Note that packedImg will be NULL in the else-if block.  Hence this diagnostic:
/builddir/build/BUILD/OpenColorIO-1.1.1/src/core/ImageDesc.cpp: In function 'OpenColorIO::v1::operator<<(std::basic_ostream<char, std::char_traits<char> >&, OpenColorIO::v1::ImageDesc const&)':
/builddir/build/BUILD/OpenColorIO-1.1.1/src/core/ImageDesc.cpp:60:51: error: 'this' pointer is null [-Werror=nonnull]
   60 |             os << "width=" << packedImg->getWidth() << ", ";
      |                                                   ^
/builddir/build/BUILD/OpenColorIO-1.1.1/src/core/ImageDesc.cpp:274:10: note: in a call to non-static member function 'OpenColorIO::v1::PackedImageDesc::getWidth() const'
  274 |     long PackedImageDesc::getWidth() const
      |          ^~~~~~~~~~~~~~~
/builddir/build/BUILD/OpenColorIO-1.1.1/src/core/ImageDesc.cpp:61:53: error: 'this' pointer is null [-Werror=nonnull]
   61 |             os << "height=" << packedImg->getHeight() << ", ";
      |                                                     ^
/builddir/build/BUILD/OpenColorIO-1.1.1/src/core/ImageDesc.cpp:279:10: note: in a call to non-static member function 'OpenColorIO::v1::PackedImageDesc::getHeight() const'
  279 |     long PackedImageDesc::getHeight() const
      |          ^~~~~~~~~~~~~~~

This is not a GCC error, but clearly an error in the package that the package maintainer will need to fix.

Comment 7 Richard Shaw 2021-02-22 22:28:28 UTC
Hopefully this is fixed in 2.0. I recently got python-sphinx-tabs into Fedora.

Comment 8 Richard Shaw 2021-03-28 19:19:51 UTC
Jeff, any hints on how to fix? This one is beyond me. Upstream has acknowledged the issue but doesn't have time to fix with 2.0 being released but there are still a couple of packages, Blender most notably when isn't ready for 2.0.