Hello team, I attempt to built Blender with the latest upstream update but hit an issue on the following line:
/usr/bin/ranlib ../../../lib/libbf_nodes.a gmake[2]: Leaving directory '/builddir/build/BUILD/blender-2.93.3/redhat-linux-build' [ 55%] Built target bf_nodes gmake[1]: Leaving directory '/builddir/build/BUILD/blender-2.93.3/redhat-linux-build' gmake: *** [Makefile:169: all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.oX2jMX (%build)
COPR available on https://copr.fedorainfracloud.org/coprs/luya/blender-egl/build/2529674/
Helps will be appreciated. Thanks in advance.
Luya Tshimbalanga Fedora Design Suite maintainer Fedora Design Team
On 8/19/21 7:39 PM, Luya Tshimbalanga wrote:
Hello team, I attempt to built Blender with the latest upstream update but hit an issue on the following line:
/usr/bin/ranlib ../../../lib/libbf_nodes.a gmake[2]: Leaving directory '/builddir/build/BUILD/blender-2.93.3/redhat-linux-build' [ 55%] Built target bf_nodes gmake[1]: Leaving directory '/builddir/build/BUILD/blender-2.93.3/redhat-linux-build' gmake: *** [Makefile:169: all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.oX2jMX (%build)
COPR available on https://copr.fedorainfracloud.org/coprs/luya/blender-egl/build/2529674/
Helps will be appreciated. Thanks in advance.
Luya Tshimbalanga Fedora Design Suite maintainer Fedora Design Team _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
Always look for "Error 1":
[ 54%] Building CXX object source/blender/io/usd/CMakeFiles/bf_usd.dir/intern/usd_capi.cc.o
cd /builddir/build/BUILD/blender-2.93.3/x86_64-redhat-linux-gnu/source/blender/io/usd && /usr/bin/g++ -DNDEBUG -DPXR_STATIC -DTBB_SUPPRESS_DEPRECATED_MESSAGES=1 -DWITH_ASSERT_ABORT -DWITH_OPENGL -D_FILE_OFFSET_BITS=64 -D_GLIBCXX_PERMIT_BACKWARD_HASH -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D__LITTLE_ENDIAN__ -D__MMX__ -D__SSE2__ -D__SSE__ -I/builddir/build/BUILD/blender-2.93.3/source/blender/io/usd -I/builddir/build/BUILD/blender-2.93.3/source/blender/io/common -I/builddir/build/BUILD/blender-2.93.3/source/blender/blenkernel -I/builddir/build/BUILD/blender-2.93.3/source/blender/blenlib -I/builddir/build/BUILD/blender-2.93.3/source/blender/blenloader -I/builddir/build/BUILD/blender-2.93.3/source/blender/bmesh -I/builddir/build/BUILD/blender-2.93.3/source/blender/depsgraph -I/builddir/build/BUILD/blender-2.93.3/source/blender/editors/include -I/builddir/build/BUILD/blender-2.93.3/source/blender/makesdna -I/builddir/build/BUILD/blender-2.93.3/source/blender/makesrna -I/builddir/build/BUILD/blender-2.93.3/source/blender/windowmanager -I/builddir/build/BUILD/blender-2.93.3/intern/guardedalloc -I/builddir/build/BUILD/blender-2.93.3/intern/utfconv -Wuninitialized -Wredundant-decls -Wall -Wno-invalid-offsetof -Wno-sign-compare -Wlogical-op -Winit-self -Wmissing-include-dirs -Wno-div-by-zero -Wtype-limits -Werror=return-type -Wno-char-subscripts -Wno-unknown-pragmas -Wpointer-arith -Wunused-parameter -Wwrite-strings -Wundef -Wformat-signedness -Wrestrict -Wno-suggest-override -Wuninitialized -Wundef -Wmissing-declarations -Wimplicit-fallthrough=5 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,--as-needed -fuse-ld=gold -fopenmp -std=c++17 -msse -pipe -fPIC -funsigned-char -fno-strict-aliasing -ffp-contract=off -msse2 -fmacro-prefix-map="/builddir/build/BUILD/blender-2.93.3/"="" -fmacro-prefix-map="/builddir/build/BUILD/blender-2.93.3/x86_64-redhat-linux-gnu/"="" -Wno-maybe-uninitialized -DNDEBUG -std=gnu++17 -o CMakeFiles/bf_usd.dir/intern/usd_capi.cc.o -c /builddir/build/BUILD/blender-2.93.3/source/blender/io/usd/intern/usd_capi.cc
In file included from /usr/include/boost/python/detail/prefix.hpp:13,
from /usr/include/boost/python/object_fwd.hpp:8,
from /usr/include/pxr/base/tf/pyObjWrapper.h:32,
from /usr/include/pxr/base/vt/value.h:32,
from /usr/include/pxr/base/vt/dictionary.h:31,
from /usr/include/pxr/usd/sdf/types.h:65,
from /usr/include/pxr/usd/pcp/site.h:31,
from /usr/include/pxr/usd/pcp/types.h:29,
from /usr/include/pxr/usd/pcp/node.h:29,
from /usr/include/pxr/usd/usd/editTarget.h:31,
from /usr/include/pxr/usd/usd/stage.h:32,
from /builddir/build/BUILD/blender-2.93.3/source/blender/io/usd/intern/usd_capi.cc:25:
/usr/include/boost/python/detail/wrap_python.hpp:57:11: fatal error: pyconfig.h: No such file or directory
57 | # include <pyconfig.h>
| ^~~~~~~~~~~~
compilation terminated.
gmake[2]: *** [source/blender/io/usd/CMakeFiles/bf_usd.dir/build.make:85: source/blender/io/usd/CMakeFiles/bf_usd.dir/intern/usd_capi.cc.o] Error 1
Hopefully that gets you pointed in the right direction.
Thank you for pointer. After applying a patch made by a co-maintainer, another issue occurred at that line:
/usr/include/pxr/usd/usdShade/output.h:303:10: note: candidate expects 1 argument, 2 provided /usr/include/pxr/usd/usdShade/output.h:310:10: note: candidate: 'bool pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_21__pxrReserved__::UsdShadeOutput&) const' 310 | bool ConnectToSource(UsdShadeOutput const &sourceOutput) const; | ^~~~~~~~~~~~~~~ /usr/include/pxr/usd/usdShade/output.h:310:10: note: candidate expects 1 argument, 2 provided gmake[2]: *** [source/blender/io/usd/CMakeFiles/bf_usd.dir/build.make:107: source/blender/io/usd/CMakeFiles/bf_usd.dir/intern/usd_writer_abstract.cc.o] Error 1 gmake[2]: Leaving directory '/builddir/build/BUILD/blender-2.93.3/redhat-linux-build'
The source build is on https://copr.fedorainfracloud.org/coprs/luya/blender-egl/build/2531231/ including the patch. Unfortunately, the issue is outside my scope.
Luya Tshimbalanga Fedora Design Suite maintainer Fedora Design Team
The errors are not the same across releases.
The complete error on F34 is:
~~~ Error: Problem: package OpenColorIO-devel-2.0.1-1.fc34.x86_64 requires libOpenColorIO.so.2.0()(64bit), but none of the providers can be installed - package OpenColorIO-devel-2.0.1-1.fc34.x86_64 requires OpenColorIO(x86-64) = 2.0.1-1.fc34, but none of the providers can be installed - cannot install both OpenColorIO-1.1.1-12.fc34.x86_64 and OpenColorIO-2.0.1-1.fc34.x86_64 - package OpenImageIO-2.2.16.0-1.fc34.x86_64 requires libOpenColorIO.so.1()(64bit), but none of the providers can be installed - package OpenImageIO-devel-2.2.16.0-1.fc34.x86_64 requires OpenImageIO(x86-64) = 2.2.16.0-1.fc34, but none of the providers can be installed - cannot install the best candidate for the job ~~~
I haven’t looked into this thoroughly enough to determine whether it’s still a problem.
The complete error on F33, F35, and F36 is:
~~~ /builddir/build/BUILD/blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc: In member function 'pxrInternal_v0_21__pxrReserved__::UsdShadeMaterial blender::io::usd::USDAbstractWriter::ensure_usd_material(Material*)': /builddir/build/BUILD/blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc:105:53: error: no matching function for call to 'pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(pxrInternal_v0_21__pxrReserved__::UsdShadeShader&, const pxrInternal_v0_21__pxrReserved__::TfToken&)' 105 | usd_material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/pxr/usd/usdShade/nodeGraph.h:39, from /usr/include/pxr/usd/usdShade/material.h:31, from /builddir/build/BUILD/blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.h:26, from /builddir/build/BUILD/blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc:19: /usr/include/pxr/usd/usdShade/output.h:277:10: note: candidate: 'bool pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_21__pxrReserved__::UsdShadeConnectionSourceInfo&, pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectionModification) const' 277 | bool ConnectToSource( | ^~~~~~~~~~~~~~~ /usr/include/pxr/usd/usdShade/output.h:278:45: note: no known conversion for argument 1 from 'pxrInternal_v0_21__pxrReserved__::UsdShadeShader' to 'const pxrInternal_v0_21__pxrReserved__::UsdShadeConnectionSourceInfo&' 278 | UsdShadeConnectionSourceInfo const &source, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ /usr/include/pxr/usd/usdShade/output.h:285:10: note: candidate: 'bool pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_21__pxrReserved__::UsdShadeConnectableAPI&, const pxrInternal_v0_21__pxrReserved__::TfToken&, pxrInternal_v0_21__pxrReserved__::UsdShadeAttributeType, pxrInternal_v0_21__pxrReserved__::SdfValueTypeName) const' 285 | bool ConnectToSource( | ^~~~~~~~~~~~~~~ /usr/include/pxr/usd/usdShade/output.h:286:39: note: no known conversion for argument 1 from 'pxrInternal_v0_21__pxrReserved__::UsdShadeShader' to 'const pxrInternal_v0_21__pxrReserved__::UsdShadeConnectableAPI&' 286 | UsdShadeConnectableAPI const &source, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ /usr/include/pxr/usd/usdShade/output.h:296:10: note: candidate: 'bool pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_21__pxrReserved__::SdfPath&) const' 296 | bool ConnectToSource(SdfPath const &sourcePath) const; | ^~~~~~~~~~~~~~~ /usr/include/pxr/usd/usdShade/output.h:296:10: note: candidate expects 1 argument, 2 provided /usr/include/pxr/usd/usdShade/output.h:303:10: note: candidate: 'bool pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_21__pxrReserved__::UsdShadeInput&) const' 303 | bool ConnectToSource(UsdShadeInput const &sourceInput) const; | ^~~~~~~~~~~~~~~ /usr/include/pxr/usd/usdShade/output.h:303:10: note: candidate expects 1 argument, 2 provided /usr/include/pxr/usd/usdShade/output.h:310:10: note: candidate: 'bool pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_21__pxrReserved__::UsdShadeOutput&) const' 310 | bool ConnectToSource(UsdShadeOutput const &sourceOutput) const; | ^~~~~~~~~~~~~~~ /usr/include/pxr/usd/usdShade/output.h:310:10: note: candidate expects 1 argument, 2 provided ~~~
In the current sources for https://src.fedoraproject.org/rpms/usd/, check pxr/usd/usdShade/shader.h, line 203, paying particular attention to the comment:
~~~ /// Contructs and returns a UsdShadeConnectableAPI object with this shader. /// /// Note that most tasks can be accomplished without explicitly constructing /// a UsdShadeConnectable API, since connection-related API such as /// UsdShadeConnectableAPI::ConnectToSource() are static methods, and /// UsdShadeShader will auto-convert to a UsdShadeConnectableAPI when /// passed to functions that want to act generically on a connectable /// UsdShadeConnectableAPI object. USDSHADE_API UsdShadeConnectableAPI ConnectableAPI() const; ~~~
I’m not taking time to track down why the implicit conversion is not possible here, and I haven’t tried to replicate your COPR in order to test the following patch, but (despite those caveats) I think that adding an explicit call to the above method has a pretty good chance of working:
~~~ diff -Naur blender-2.93.3-original/source/blender/io/usd/intern/usd_writer_abstract.cc blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc --- blender-2.93.3-original/source/blender/io/usd/intern/usd_writer_abstract.cc 2021-04-20 22:02:39.000000000 -0400 +++ blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc 2021-08-21 14:06:34.944881162 -0400 @@ -102,7 +102,9 @@ shader.CreateInput(usdtokens::metallic, pxr::SdfValueTypeNames->Float).Set(material->metallic);
/* Connect the shader and the material together. */ - usd_material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface); + usd_material.CreateSurfaceOutput().ConnectToSource( + shader.ConnectableAPI(), + usdtokens::surface);
return usd_material; } ~~~
On 8/20/21 7:21 PM, Luya Tshimbalanga wrote:
Thank you for pointer. After applying a patch made by a co-maintainer, another issue occurred at that line:
/usr/include/pxr/usd/usdShade/output.h:303:10: note: candidate expects 1 argument, 2 provided /usr/include/pxr/usd/usdShade/output.h:310:10: note: candidate: 'bool pxrInternal_v0_21__pxrReserved__::UsdShadeOutput::ConnectToSource(const pxrInternal_v0_21__pxrReserved__::UsdShadeOutput&) const' 310 | bool ConnectToSource(UsdShadeOutput const &sourceOutput) const; | ^~~~~~~~~~~~~~~ /usr/include/pxr/usd/usdShade/output.h:310:10: note: candidate expects 1 argument, 2 provided gmake[2]: *** [source/blender/io/usd/CMakeFiles/bf_usd.dir/build.make:107: source/blender/io/usd/CMakeFiles/bf_usd.dir/intern/usd_writer_abstract.cc.o] Error 1 gmake[2]: Leaving directory '/builddir/build/BUILD/blender-2.93.3/redhat-linux-build'
The source build is on https://copr.fedorainfracloud.org/coprs/luya/blender-egl/build/2531231/ including the patch. Unfortunately, the issue is outside my scope.
Luya Tshimbalanga Fedora Design Suite maintainer Fedora Design Team _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
diff -Naur blender-2.93.3-original/source/blender/io/usd/intern/usd_writer_abstract.cc blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc --- blender-2.93.3-original/source/blender/io/usd/intern/usd_writer_abstract.cc 2021-04-20 22:02:39.000000000 -0400 +++ blender-2.93.3/source/blender/io/usd/intern/usd_writer_abstract.cc 2021-08-21 14:06:34.944881162 -0400 @@ -102,7 +102,9 @@ shader.CreateInput(usdtokens::metallic, pxr::SdfValueTypeNames->Float).Set(material->metallic); /* Connect the shader and the material together. */ - usd_material.CreateSurfaceOutput().ConnectToSource(shader, usdtokens::surface); + usd_material.CreateSurfaceOutput().ConnectToSource( + shader.ConnectableAPI(), + usdtokens::surface); return usd_material; }
Thanks. The suggested patch successfully worked and I filed it to upstream [1]. I committed the changes to Rawhide branch [2] to facilitate the works. Scratch build is on the way https://koji.fedoraproject.org/koji/taskinfo?taskID=74309552 The failure now occurs on
~~~ /builddir/build/BUILD/blender-2.93.3/source/blender/blenkernel/intern/dynamicpaint.c:1901:7: note: referencing argument 1 of type 'unsigned char *' /builddir/build/BUILD/blender-2.93.3/source/blender/blenlib/intern/math_color.c:427: note: in a call to function 'rgba_float_to_uchar' 427 | void rgba_float_to_uchar(unsigned char r_col[4], const float col_f[4]) | /usr/bin/ld.gold: internal error in format_file_lineno, at dwarf_reader.cc:2278 collect2: error: ld returned 1 exit status gmake[2]: *** [source/creator/CMakeFiles/blender.dir/build.make:409: bin/blender] Error 1 ~~~~
Reference: [1] https://developer.blender.org/T90842 [2] https://src.fedoraproject.org/rpms/blender/c/f133d7a5a9273bcf92bd21f38bc34bf...
Luya Tshimbalanga Fedora Design Suite maintainer Fedora Design Team