On Mon, Jul 12 2021, Michael J. Gruber wrote: > David Bremner venit, vidit, dixit 2021-07-11 23:29:57: >> >> It turns out we need pyconfig.h to build the (new) python bindings. I >> don't think this is adequately checked for by the configure script, >> since I had a Fedora user report a build failure (during make install, >> which I found odd) missing pyconfig.h >> >> On Debian this is on libpython3.x-dev, which is not a dependency of the >> python3-cffi package. > > You need python3-cffi to run python code which uses cffi bindings - > think of it as the "lib" part. You need the devel package to generate a > python module using cffi (i.e. binding for a specific c library). > > So, it makes sense for the lib package not to depend on the devel > package (which is python3-devel on Fedora). > > I can't help with adapting configure to the header requirement, though. In case of python3-devel missing in Fedora, the compilation should not pass as far as shown in David's email (and in log below) as it is needed for Checking for python3 cffi and setuptools... configure part to complete with 'Yes' But the message could be better. Perhaps Checking for python3 dev(el), cffi and setuptools... (although this may not be clear enough for debian users as the package there is libpython3-dev, cannot say...) For me, to figure out what was needed in Fedora 34 (ok, 33, but now tested in upgraded fedora 34 host in running fedora:34 podman container) was to run script -c 'sh -x ./configure'; less typescript; and then do internet search how to install missing 'Python.h' include file... Tomi > > Michael > >> log follows. >> ---------------------------------------------------------------------- >> >> cd bindings/python-cffi && \ >> python3 setup.py build --build-lib build/stage && \ >> mkdir -p build/stage/tests && cp tests/*.py build/stage/tests >> running build >> running build_py >> running build_ext >> generating cffi module 'build/temp.linux-x86_64-3.9/notmuch2._capi.c' >> creating build/temp.linux-x86_64-3.9 >> building 'notmuch2._capi' extension >> creating build/temp.linux-x86_64-3.9/build >> creating build/temp.linux-x86_64-3.9/build/temp.linux-x86_64-3.9 >> gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I../../lib -I/usr/include/python3.9 -c build/temp.linux-x86_64-3.9/notmuch2._capi.c -o b > ui >> ld/temp.linux-x86_64-3.9/build/temp.linux-x86_64-3.9/notmuch2._capi.o >> build/temp.linux-x86_64-3.9/notmuch2._capi.c:50:14: fatal error: pyconfig.h: No such file or directory >> 50 | # include <pyconfig.h> >> | ^~~~~~~~~~~~ >> compilation terminated. >> error: command '/usr/bin/gcc' failed with exit code 1 _______________________________________________ notmuch mailing list -- notmuch@notmuchmail.org To unsubscribe send an email to notmuch-leave@notmuchmail.org