In file included from /usr/include/boost/python/detail/prefix.hpp:13, from /usr/include/boost/python/object_fwd.hpp:8, from /usr/local/include/pxr/base/tf/pyObjWrapper.h:32, from /usr/local/include/pxr/base/vt/value.h:32, from /usr/local/include/pxr/base/vt/dictionary.h:31, from /usr/local/include/pxr/usd/sdf/types.h:65, from /usr/local/include/pxr/usd/pcp/site.h:31, from /usr/local/include/pxr/usd/pcp/types.h:29, from /usr/local/include/pxr/usd/pcp/node.h:29, from /usr/local/include/pxr/usd/usd/editTarget.h:31, from /usr/local/include/pxr/usd/usd/stage.h:32, from /var/tmp/portage/media-gfx/blender-2.91.0/work/blender-2.91.0/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. see also https://bugs.gentoo.org/578354 Reproducible: Always
Created attachment 676378 [details] build.log.xz
Created attachment 676381 [details] environment.xz
The build system seems to be picking up garbage from /usr/local (this is why it’s a bad place to use for local things, unfortunately). I think we hit this before and it’s why we disabled the Python bindings? I’ll have to check.
# find / -iname "pyconfig.h" 2>/dev/null /usr/include/python3.8/pyconfig.h /usr/include/python3.6m/pyconfig.h /usr/include/python3.7m/pyconfig.h /usr/include/python2.7/pyconfig.h /usr/include/python3.9/pyconfig.h
# python -c 'import distutils.sysconfig; print(distutils.sysconfig.get_python_inc())' /usr/include/python3.8
this error occurs only with USE="usd"
Fixed already in https://github.com/gentoo/gentoo/pull/20565. See the work in: bug 795003 bug 778008 bug 774372 bug 673422 bug 737388