On Thu, Jan 8, 2026 at 5:26 AM Samuel H Dupree Jr <[email protected]> wrote:
> Thanks for passing on the link referenced below. I'm presently testing the > mod, and so far it works. The question I have at present is, if this turns > out to be a viable fix, what are the next steps? > It's not quite clear to me what your question is - do you want to get it to build just for yourself, or are you fixing a problem in a distro like MacPorts? If the latter, we can review a pull request to the relevant maintenance branch (maintenance/2.4.x I assume). It can't be a problem in the main branch anymore, because `numpy/distutils/` no longer exists there. Cheers, Ralf > > Sam Dupree > > On Tue, 06 Jan 2026 10:10:29 -0800, Bill Ross <[email protected]> > wrote: > > > Here it is - the diffs are reached by clicking on the hex-coded links > ("Long time I fell ..." --Gandalf). > > > https://github.com/numpy/numpy/pull/27406/commits/1cc02cc6710384c52e1082a33d1617504eaed296 > --- > -- > > Phobrain.com > > > > On 2026-01-06 09:37, Bill Ross wrote: > > I'm out of my depth, but I'd try that location first, however maybe like > this: > > if name == "meson": > from ._meson import MesonBackend > return MesonBackend > elif name == "distutils": > > print("HACK skipping distutils for buggy downstream import") > > return None > > # from ._distutils import DistutilsBackend > # return DistutilsBackend > else: > raise ValueError(f"Unknown backend: {name}") > > If it runs great, if not, it appears DistUtilsBackend would need to skip > loading that specific compiler. > > I don't understand how to find the actual patch/diff that the bug link is > about. > > > Might try using the patch in https://github.com/numpy/numpy/pull/27406. > --- > -- > > Phobrain.com > > > > On 2026-01-06 09:23, Samuel H Dupree Jr wrote: > > Are you saying that I should try > modifying > ~/opt/anaconda3/lib/python3.11/site-packages/numpy/f2py/_backends/-init_.py, > as follows: > > def f2py_build_generator(name): > if name == "meson": > from ._meson import MesonBackend > return MesonBackend > #elif name == "distutils": > # from ._distutils import DistutilsBackend > # return DistutilsBackend > else: > raise ValueError(f"Unknown backend: {name}") > > appears to be where the "key" is chosen, furthermore, > > Please advise. > > Sam Dupree. > > > On Tue, 06 Jan 2026 09:14:47 -0800, Bill Ross <[email protected]> > wrote: > > > > So, what do you think the best way is to fix my problem? > > Per Charles Harris, stub out the missing OS, which distutils seems to try > to load by default (i.e. the key is 'distutils' not the unwanted OS so my > idea wasn't fruitful): > > Might try using the patch in https://github.com/numpy/numpy/pull/27406. > > Bill Ross > > -- > > Phobrain.com > > > > On 2026-01-06 08:49, Samuel H Dupree Jr wrote: > > The source member, > ~/opt/anaconda3/lib/python3.11/site-packages/numpy/f2py/_backends/-init_.py, > > def f2py_build_generator(name): > if name == "meson": > from ._meson import MesonBackend > return MesonBackend > elif name == "distutils": > from ._distutils import DistutilsBackend > return DistutilsBackend > else: > raise ValueError(f"Unknown backend: {name}") > > appears to be where the "key" is chosen, furthermore, in f2p2e.py sets the > background_key and invokes 2py_build_generator. To my knowledge, I'm not > running meson. So, what do you think the best way is to fix my problem? > > Please advise, > > Sam Dupree > > On Sun, 04 Jan 2026 18:23:22 -0800, Bill Ross <[email protected]> > wrote: > > > Uninformed debugging: > > > build_backend = f2py_build_generator(backend_key) > > Can you inspect that backend_key? It seems like it could be 'key' to > choosing the wrong back end. > Bill > > -- > > Phobrain.com > > > > On 2026-01-04 17:18, Samuel H Dupree Jr wrote: > > I am resurrecting a Python program I wrote a few years under Python 3.9. > I'm presently: > > - Running Python 3.11 under Mac OSX Sequoia (ver. 15.7.1) > - Using NumPy version 1.26.4 > - Running on an Intel (x86-64) Mac Pro Desktop (2019) > - > > The program uses a Fortran 77 subroutine that was wrapped using f2py when > I running Python 3.9. However, when I attempt to wrap that same subroutine > (the source code is attached to this note) using f2py in Python 3.11, I get > the following error message. > > > > (base) user@Mac-Pro accgravityfiled_builder_f2py % *f2py -c > accgravityfield.f -m accgravityfield * > Traceback (most recent call last): > File "/Users/user/opt/anaconda3/bin/f2py", line 8, in <module> > sys.exit(main()) > ^^^^^^ > File > "/Users/user/opt/anaconda3/lib/python3.11/site-packages/numpy/f2py/f2py2e.py", > line 766, in main > run_compile() > File > "/Users/user/opt/anaconda3/lib/python3.11/site-packages/numpy/f2py/f2py2e.py", > line 594, in run_compile > build_backend = f2py_build_generator(backend_key) > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > File > "/Users/user/opt/anaconda3/lib/python3.11/site-packages/numpy/f2py/_backends/__init__.py", > line 6, in f2py_build_generator > from ._distutils import DistutilsBackend > File > "/Users/user/opt/anaconda3/lib/python3.11/site-packages/numpy/f2py/_backends/_distutils.py", > line 3, in <module> > from numpy.distutils.core import setup, Extension > File > "/Users/user/opt/anaconda3/lib/python3.11/site-packages/numpy/distutils/core.py", > line 24, in <module> > from numpy.distutils.command import config, config_compiler, \ > File > "/Users/user/opt/anaconda3/lib/python3.11/site-packages/numpy/distutils/command/config.py", > line 19, in <module> > from numpy.distutils.mingw32ccompiler import generate_manifest > File > "/Users/user/opt/anaconda3/lib/python3.11/site-packages/numpy/distutils/mingw32ccompiler.py", > line 27, in <module> > from distutils.msvccompiler import get_build_version as > get_build_msvc_version > ModuleNotFoundError: No module named 'distutils.msvccompiler' > (base) user@Mac-Pro accgravityfiled_builder_f2py % > > > > As for gfortran is concerned: > > > > (base) user@Mac-Pro accgravityfiled_builder_f2py % gfortran -v > Using built-in specs. > COLLECT_GCC=gfortran > > COLLECT_LTO_WRAPPER=/usr/local/Cellar/gcc/15.2.0/bin/../libexec/gcc/x86_64-apple-darwin24/15/lto-wrapper > Target: x86_64-apple-darwin24 > Configured with: ../configure --prefix=/usr/local/opt/gcc > --libdir=/usr/local/opt/gcc/lib/gcc/current --disable-nls > --enable-checking=release --with-gcc-major-version-only > --enable-languages=c,c++,objc,obj-c++,fortran --program-suffix=-15 > --with-gmp=/usr/local/opt/gmp --with-mpfr=/usr/local/opt/mpfr > --with-mpc=/usr/local/opt/libmpc --with-isl=/usr/local/opt/isl > --with-zstd=/usr/local/opt/zstd --with-pkgversion='Homebrew GCC 15.2.0' > --with-bugurl=https://github.com/Homebrew/homebrew-core/issues > --with-system-zlib --build=x86_64-apple-darwin24 > --with-sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk > Thread model: posix > Supported LTO compression algorithms: zlib zstd > gcc version 15.2.0 (Homebrew GCC 15.2.0) > (base) user@Mac-Pro accgravityfiled_builder_f2py % > > > > I have two questions: > > 1. Why is f2py in a Mac OSX Intel based environment attempting to > import '*distutils.msvccompiler*' that is required for Windows' > environment only? > 2. What do I need to do to eliminate this problem? > > Any thoughts? > > Sam Dupree > > > > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] > > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] > > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] > > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] > > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] > > > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] > > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] > _______________________________________________ > NumPy-Discussion mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3//lists/numpy-discussion.python.org > Member address: [email protected] >
_______________________________________________ NumPy-Discussion mailing list -- [email protected] To unsubscribe send an email to [email protected] https://mail.python.org/mailman3//lists/numpy-discussion.python.org Member address: [email protected]
