Bug 1843100 - blender fails to build and install error: unknown type name 'PyNoArgsFunction'; did you mean 'PyCFunction'
Summary: blender fails to build and install error: unknown type name 'PyNoArgsFunction...
Alias: None
Product: Fedora
Classification: Fedora
Component: blender
Version: 33
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Luya Tshimbalanga
QA Contact: Fedora Extras Quality Assurance
Depends On: 1843093
Blocks: ARMTracker F33FTBFS F33FailsToInstall PYTHON39 1843120 1844904
TreeView+ depends on / blocked
Reported: 2020-06-02 17:41 UTC by Igor Raits
Modified: 2020-08-31 20:08 UTC (History)
9 users (show)

Fixed In Version: blender-2.83.5-4.fc33
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2020-08-31 20:08:25 UTC
Type: ---

Attachments (Terms of Use)

Description Igor Raits 2020-06-02 17:41:43 UTC

Please note that this comment was generated automatically. If you feel that this output has mistakes, please contact me via email (ignatenkobrain@fedoraproject.org).

Your package (blender) Fails To Install in Fedora 33:

can't install blender:
  - nothing provides libboost_locale.so.1.69.0()(64bit) needed by blender-1:2.82a-5.fc33.x86_64
If you don't react accordingly to the policy for FTBFS/FTI bugs (https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/), your package may be orphaned in 8+ weeks.

P.S. The data was generated solely from koji buildroot, so it might be newer than the latest compose or the content on mirrors.

P.P.S. If this bug has been reported in the middle of upgrading multiple dependent packages, please consider using side tags: https://docs.fedoraproject.org/en-US/rawhide-gating/multi-builds/


Comment 1 Tomáš Hrnčiar 2020-06-08 11:52:38 UTC
[ 44%] Building C object source/blender/python/mathutils/CMakeFiles/bf_python_mathutils.dir/mathutils_Matrix.c.o
cd /builddir/build/BUILD/blender-2.82a/cmake-make/source/blender/python/mathutils && /usr/bin/gcc -DNDEBUG -DWITH_ASSERT_ABORT -DWITH_OPENGL -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D__LITTLE_ENDIAN__ -D__MMX__ -D__SSE2__ -D__SSE__ -I/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils -I/builddir/build/BUILD/blender-2.82a/source/blender/blenkernel -I/builddir/build/BUILD/blender-2.82a/source/blender/blenlib -I/builddir/build/BUILD/blender-2.82a/source/blender/bmesh -I/builddir/build/BUILD/blender-2.82a/source/blender/depsgraph -I/builddir/build/BUILD/blender-2.82a/source/blender/makesdna -I/builddir/build/BUILD/blender-2.82a/intern/guardedalloc -isystem /usr/include/python3.9  -Wall -Wcast-align -Werror=implicit-function-declaration -Werror=return-type -Werror=vla -Wstrict-prototypes -Wmissing-prototypes -Wno-char-subscripts -Wno-unknown-pragmas -Wpointer-arith -Wunused-parameter -Wwrite-strings -Wlogical-op -Wundef -Winit-self -Wmissing-include-dirs -Wno-div-by-zero -Wtype-limits -Wformat-signedness -Wrestrict -Wnonnull -Wabsolute-value -Wuninitialized -Wredundant-decls -Wshadow -Wno-error=unused-but-set-variable -Wimplicit-fallthrough=5 -O2 -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  -m32 -march=i686 -mtune=generic -msse2 -mfpmath=sse -mstackrealign -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fuse-ld=gold -fopenmp -std=gnu11   -msse -pipe -fPIC -funsigned-char -fno-strict-aliasing -msse2 -DNDEBUG   -o CMakeFiles/bf_python_mathutils.dir/mathutils_Matrix.c.o   -c /builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:45:40: error: unknown type name 'PyNoArgsFunction'; did you mean 'PyCFunction'?
   45 | static PyObject *matrix__apply_to_copy(PyNoArgsFunction matrix_func, MatrixObject *self);
      |                                        ^~~~~~~~~~~~~~~~
      |                                        PyCFunction
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:398:40: error: unknown type name 'PyNoArgsFunction'; did you mean 'PyCFunction'?
  398 | static PyObject *matrix__apply_to_copy(PyNoArgsFunction matrix_func, MatrixObject *self)
      |                                        ^~~~~~~~~~~~~~~~
      |                                        PyCFunction
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c: In function 'Matrix_adjugated':
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1714:10: error: implicit declaration of function 'matrix__apply_to_copy' [-Werror=implicit-function-declaration]
 1714 |   return matrix__apply_to_copy((PyNoArgsFunction)Matrix_adjugate, self);
      |          ^~~~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1714:33: error: 'PyNoArgsFunction' undeclared (first use in this function); did you mean 'PyCFunction'?
 1714 |   return matrix__apply_to_copy((PyNoArgsFunction)Matrix_adjugate, self);
      |                                 ^~~~~~~~~~~~~~~~
      |                                 PyCFunction
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1714:33: note: each undeclared identifier is reported only once for each function it appears in
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1714:50: error: expected ')' before 'Matrix_adjugate'
 1714 |   return matrix__apply_to_copy((PyNoArgsFunction)Matrix_adjugate, self);
      |                                                  ^~~~~~~~~~~~~~~
      |                                                  )
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1712:49: warning: unused parameter 'self' [-Wunused-parameter]
 1712 | static PyObject *Matrix_adjugated(MatrixObject *self)
      |                                   ~~~~~~~~~~~~~~^~~~
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c: In function 'Matrix_transposed':
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1922:33: error: 'PyNoArgsFunction' undeclared (first use in this function); did you mean 'PyCFunction'?
 1922 |   return matrix__apply_to_copy((PyNoArgsFunction)Matrix_transpose, self);
      |                                 ^~~~~~~~~~~~~~~~
      |                                 PyCFunction
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1922:50: error: expected ')' before 'Matrix_transpose'
 1922 |   return matrix__apply_to_copy((PyNoArgsFunction)Matrix_transpose, self);
      |                                                  ^~~~~~~~~~~~~~~~
      |                                                  )
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1920:50: warning: unused parameter 'self' [-Wunused-parameter]
 1920 | static PyObject *Matrix_transposed(MatrixObject *self)
      |                                    ~~~~~~~~~~~~~~^~~~
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c: In function 'Matrix_normalized':
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1968:33: error: 'PyNoArgsFunction' undeclared (first use in this function); did you mean 'PyCFunction'?
 1968 |   return matrix__apply_to_copy((PyNoArgsFunction)Matrix_normalize, self);
      |                                 ^~~~~~~~~~~~~~~~
      |                                 PyCFunction
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1968:50: error: expected ')' before 'Matrix_normalize'
 1968 |   return matrix__apply_to_copy((PyNoArgsFunction)Matrix_normalize, self);
      |                                                  ^~~~~~~~~~~~~~~~
      |                                                  )
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1966:50: warning: unused parameter 'self' [-Wunused-parameter]
 1966 | static PyObject *Matrix_normalized(MatrixObject *self)
      |                                    ~~~~~~~~~~~~~~^~~~
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c: In function 'Matrix_adjugated':
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1715:1: error: control reaches end of non-void function [-Werror=return-type]
 1715 | }
      | ^
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c: In function 'Matrix_normalized':
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1969:1: error: control reaches end of non-void function [-Werror=return-type]
 1969 | }
      | ^
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c: In function 'Matrix_transposed':
/builddir/build/BUILD/blender-2.82a/source/blender/python/mathutils/mathutils_Matrix.c:1923:1: error: control reaches end of non-void function [-Werror=return-type]
 1923 | }
      | ^
cc1: some warnings being treated as errors
make[2]: *** [source/blender/python/mathutils/CMakeFiles/bf_python_mathutils.dir/build.make:125: source/blender/python/mathutils/CMakeFiles/bf_python_mathutils.dir/mathutils_Matrix.c.o] Error 1
make[2]: Leaving directory '/builddir/build/BUILD/blender-2.82a/cmake-make'
make[2]: *** Waiting for unfinished jobs....
make[2]: Entering directory '/builddir/build/BUILD/blender-2.82a/cmake-make'

Comment 2 Luya Tshimbalanga 2020-06-09 01:05:50 UTC
Thanks for the tracker. Similar problem occurs with upstream blender-2.83.0 from Rawhide scratch build result:

Comment 3 Petr Viktorin 2020-06-09 08:27:37 UTC
CPython issue on removing PyNoArgsFunction (which was undocumented, and undefined – only declared): https://bugs.python.org/issue39372

Comment 4 Igor Raits 2020-06-11 05:42:20 UTC

This is the first reminder (step 3 from https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/#_package_removal_for_long_standing_ftbfs_and_fti_bugs).

If you know about this problem and are planning on fixing it, please acknowledge so by setting the bug status to ASSIGNED. If you don't have time to maintain this package, consider orphaning it, so maintainers of dependent packages realize the problem.

Comment 6 Luya Tshimbalanga 2020-06-23 00:45:10 UTC
Spec file updated addressing the issue: https://src.fedoraproject.org/rpms/blender/blob/master/f/blender.spec. Other issue occurred and need investigation.

Comment 7 Luya Tshimbalanga 2020-06-23 01:30:34 UTC
Now OpenImageIO and opencv are blockers.

Comment 8 Luya Tshimbalanga 2020-06-23 01:31:16 UTC
Scratch build result

Comment 9 Ben Cotton 2020-08-11 13:35:35 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 33 development cycle.
Changing version to 33.

Comment 10 Miro Hrončok 2020-08-22 10:30:52 UTC
Hello. This comment is mass posted to all 16 bugzillas for packages that failed to rebuild with Python 3.9 (and, in most cases, also fail to install on Fedora 33 and 34). Apologies if some of the suggestions or questions don't apply 100%.

Fedora 33 Beta Freeze starts next week on Tuesday, 2020-08-25. I haven't spammed this bugzilla because it is in ASSIGNED, or I've seen upstream has been notified.

Please consider what to do here. Is this failure critical? For example, can a test be temporarily skipped to make this package build? Is it possible to fix or workaround the failure before Fedora 33 Beta? Or before Fedora 33 Final? If not, would it make sense to retire the package (even temporarily) before the release to unblock updates from Fedora 31 or Fedora 32?

In case you need any assistance with a Python-related problem with the build, don't hesitate to let me know and I'll try to have a look.

Thank you!

Comment 11 Charalampos Stratakis 2020-08-25 12:36:28 UTC
The current issue with building blender right now lies with openvdb, from which blender imports some headers [0]. It seems the workaround is to ensure that blender is built with c++14.

[0] https://github.com/AcademySoftwareFoundation/openvdb/issues/795

Comment 12 Fedora Update System 2020-08-26 11:21:32 UTC
FEDORA-2020-1b111c84aa has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2020-1b111c84aa

Comment 13 Fedora Update System 2020-08-26 17:07:17 UTC
FEDORA-2020-1b111c84aa has been pushed to the Fedora 33 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-1b111c84aa`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-1b111c84aa

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 14 Fedora Update System 2020-08-31 20:08:25 UTC
FEDORA-2020-1b111c84aa has been pushed to the Fedora 33 stable repository.
If problem still persists, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.