[MacPorts] #68545: py311-numpy @1.26.1 build failure - cannot find cython

MacPorts noreply at macports.org
Wed Oct 25 18:05:59 UTC 2023


#68545: py311-numpy @1.26.1 build failure - cannot find cython
-----------------------+-----------------------
  Reporter:  RobK88    |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:  2.8.1
Resolution:            |   Keywords:  lion
      Port:  py-numpy  |
-----------------------+-----------------------

Comment (by RobK88):

 I tried to build `py311-numpy` from the git source (with the recommended
 patches).

 The `cython3` libraries / compiler was found.  (i.e. I see `@@@ CYTHON =
 '/opt/local/bin/cython-3.11'`. But the build failed for another reason:

 {{{
 rob$ git clone https://github.com/numpy/numpy.git
 Cloning into 'numpy'...
 remote: Enumerating objects: 254138, done.
 remote: Counting objects: 100% (1143/1143), done.
 remote: Compressing objects: 100% (499/499), done.
 remote: Total 254138 (delta 689), reused 963 (delta 629), pack-reused
 252995
 Receiving objects: 100% (254138/254138), 128.99 MiB | 984.00 KiB/s, done.
 Resolving deltas: 100% (200239/200239), done.
 Updating files: 100% (2124/2124), done.
 Grinchs-Mac-Pro-2:git Repos rob$
 Grinchs-Mac-Pro-2:git Repos rob$
 Grinchs-Mac-Pro-2:git Repos rob$ cd numpy/
 Grinchs-Mac-Pro-2:numpy rob$ git checkout v1.26.1
 Updating files: 100% (1563/1563), done.
 Note: switching to 'v1.26.1'.

 You are in 'detached HEAD' state. You can look around, make experimental
 changes and commit them, and you can discard any commits you make in this
 state without impacting any branches by switching back to a branch.

 If you want to create a new branch to retain commits you create, you may
 do so (now or later) by using -c with the switch command. Example:

   git switch -c <new-branch-name>

 Or undo this operation with:

   git switch -

 Turn off this advice by setting config variable advice.detachedHead to
 false

 HEAD is now at 411a55b9e Merge pull request #24928 from charris/update-
 version

 Grinchs-Mac-Pro-2:numpy rob$ git submodule init
 Submodule 'doc/source/_static/scipy-mathjax' (https://github.com/scipy
 /scipy-mathjax.git) registered for path 'doc/source/_static/scipy-mathjax'
 Submodule 'numpy/core/src/npysort/x86-simd-sort'
 (https://github.com/intel/x86-simd-sort) registered for path
 'numpy/core/src/npysort/x86-simd-sort'
 Submodule 'numpy/core/src/umath/svml' (https://github.com/numpy/SVML.git)
 registered for path 'numpy/core/src/umath/svml'
 Submodule 'vendored-meson/meson' (https://github.com/numpy/meson.git)
 registered for path 'vendored-meson/meson'
 Submodule 'vendored-meson/meson-python' (https://github.com/numpy/meson-
 python.git) registered for path 'vendored-meson/meson-python'

 Grinchs-Mac-Pro-2:numpy rob$ git submodule update
 Cloning into '/Users/rob/Development/git Repos/numpy/doc/source/_static
 /scipy-mathjax'...
 Cloning into '/Users/rob/Development/git
 Repos/numpy/numpy/core/src/npysort/x86-simd-sort'...
 Cloning into '/Users/rob/Development/git
 Repos/numpy/numpy/core/src/umath/svml'...
 Cloning into '/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson'...
 Cloning into '/Users/rob/Development/git Repos/numpy/vendored-meson/meson-
 python'...
 Submodule path 'doc/source/_static/scipy-mathjax': checked out
 '36f4c898f2255e0c98eb6949cd67381552d5ffea'
 Submodule path 'numpy/core/src/npysort/x86-simd-sort': checked out
 '85fbe7d1abca3b9a224ba1c62d52afe9a180f8ef'
 Submodule path 'numpy/core/src/umath/svml': checked out
 '1b21e453f6b1ba6a6aca392b1d810d9d41576123'
 Submodule path 'vendored-meson/meson': checked out
 '66ba7dbbfe2838983f65ad8fe16da1535ebf5b9d'
 Submodule path 'vendored-meson/meson-python': checked out
 '206a31a96458af6cf5e29272b4ea1f6ea500b91b'

 Grinchs-Mac-Pro-2:numpy rob$ patch -p0 <
 /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/python
 /py-numpy/files/patch-build_cython_path.diff
 patching file vendored-meson/meson/mesonbuild/envconfig.py

 Grinchs-Mac-Pro-2:numpy rob$ patch -p0 <
 /Users/rob/Documents/mesonPatch.diff
 patching file vendored-meson/meson/meson.py

 Grinchs-Mac-Pro-2:numpy rob$ PATH=/opt/local/bin:/usr/bin:/bin
 CYTHON=/opt/local/bin/cython-3.11 OPENBLAS=/opt/local/lib MKLROOT=None
 ATLAS=None SETUPTOOLS_USE_DISTUTILS=stdlib python3.11 -m build --no-
 isolation --wheel
 * Getting build dependencies for wheel...
 * Building wheel...
 + /opt/local/bin/python3.11 /Users/rob/Development/git Repos/numpy
 /vendored-meson/meson/meson.py setup /Users/rob/Development/git
 Repos/numpy /Users/rob/Development/git Repos/numpy/.mesonpy-ew44b68j/build
 -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --native-
 file=/Users/rob/Development/git Repos/numpy/.mesonpy-ew44b68j/build/meson-
 python-native-file.ini
 @@@ mesonmain = <module 'mesonbuild.mesonmain' from
 '/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/mesonmain.py'>
 @@@ CYTHON = '/opt/local/bin/cython-3.11'
 The Meson build system
 Version: 1.2.99
 Source dir: /Users/rob/Development/git Repos/numpy
 Build dir: /Users/rob/Development/git Repos/numpy/.mesonpy-ew44b68j/build
 Build type: native build
 Project name: NumPy
 Project version: 1.26.1
 C compiler for the host machine: ccache cc (clang 4.2 "Apple LLVM version
 4.2 (clang-425.0.28) (based on LLVM 3.2svn)")
 C linker for the host machine: cc ld64 136
 C++ compiler for the host machine: ccache c++ (clang 4.2 "Apple LLVM
 version 4.2 (clang-425.0.28) (based on LLVM 3.2svn)")
 C++ linker for the host machine: c++ ld64 136
 Cython compiler for the host machine: /opt/local/bin/cython-3.11 (cython
 0.29.36)
 Host machine cpu family: x86
 Host machine cpu: i386
 Program python found: YES (/opt/local/bin/python3.11)
 Found pkg-config: /opt/local/bin/pkg-config (0.29.2)
 Run-time dependency python found: YES 3.11
 Has header "Python.h" with dependency python-3.11: YES
 Compiler for C supports arguments -fno-strict-aliasing: NO
 Compiler for C supports arguments -ftrapping-math: NO
 Test features "SSE SSE2" : Parial support, missing(SSE SSE2)
 Test features "SSE" : Unsupported due to Arguments "-msse, -msse2" are not
 supported
 Test features "SSE2" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "SSE3" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "SSSE3" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "SSE41" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "POPCNT" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "SSE42" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "AVX" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "F16C" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "FMA3" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "AVX2" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "AVX512F" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "AVX512CD" : Unsupported due to Implied feature "SSE" is not
 supported
 Test features "AVX512_KNL" : Unsupported due to Implied feature "SSE" is
 not supported
 Test features "AVX512_KNM" : Unsupported due to Implied feature "SSE" is
 not supported
 Test features "AVX512_SKX" : Unsupported due to Implied feature "SSE" is
 not supported
 Test features "AVX512_CLX" : Unsupported due to Implied feature "SSE" is
 not supported
 Test features "AVX512_CNL" : Unsupported due to Implied feature "SSE" is
 not supported
 Test features "AVX512_ICL" : Unsupported due to Implied feature "SSE" is
 not supported
 Test features "AVX512_SPR" : Unsupported due to Implied feature "SSE" is
 not supported
 Configuring npy_cpu_dispatch_config.h using configuration
 Message:
 CPU Optimization Options
   baseline:
     Requested : min
     Enabled   :
   dispatch:
     Requested : max -xop -fma4
     Enabled   :

 Library m found: YES
 Found CMake: /opt/local/bin/cmake (3.24.4)
 WARNING: CMake Toolchain: Failed to determine CMake compilers state
 Run-time dependency scipy-openblas found: NO (tried pkgconfig, framework
 and cmake)
 WARNING: MKLROOT env var set to /Users/rob/Development/git Repos/numpy
 /.mesonpy-ew44b68j/build/None, but not pointing to an MKL install
 Run-time dependency mkl found: NO (tried pkgconfig and system)
 WARNING: MKLROOT env var set to /Users/rob/Development/git Repos/numpy
 /.mesonpy-ew44b68j/build/None, but not pointing to an MKL install
 Run-time dependency mkl found: NO (tried pkgconfig and system)
 Traceback (most recent call last):
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/mesonmain.py", line 194, in run
     return options.run_func(options)
            ^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/msetup.py", line 358, in run
     app.generate()
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/msetup.py", line 183, in generate
     return self._generate(env, capture, vslite_ctx)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/msetup.py", line 228, in _generate
     intr.run()
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreter/interpreter.py", line 2997, in run
     super().run()
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 164, in
 run
     self.evaluate_codeblock(self.ast, start=1)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 190, in
 evaluate_codeblock
     raise e
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 182, in
 evaluate_codeblock
     self.evaluate_statement(cur)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 196, in
 evaluate_statement
     return self.function_call(cur)
            ^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 521, in
 function_call
     res = func(node, func_args, kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 277, in
 wrapper
     return f(*nargs, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 596, in
 wrapper
     return f(*wrapped_args, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreter/interpreter.py", line 2409, in
 func_subdir
     self.evaluate_codeblock(codeblock)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 190, in
 evaluate_codeblock
     raise e
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 182, in
 evaluate_codeblock
     self.evaluate_statement(cur)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 206, in
 evaluate_statement
     return self.evaluate_if(cur)
            ^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 301, in
 evaluate_if
     self.evaluate_codeblock(i.block)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 190, in
 evaluate_codeblock
     raise e
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 182, in
 evaluate_codeblock
     self.evaluate_statement(cur)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 228, in
 evaluate_statement
     self.evaluate_foreach(cur)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 472, in
 evaluate_foreach
     self.evaluate_codeblock(node.block)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 190, in
 evaluate_codeblock
     raise e
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 182, in
 evaluate_codeblock
     self.evaluate_statement(cur)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 206, in
 evaluate_statement
     return self.evaluate_if(cur)
            ^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 306, in
 evaluate_if
     self.evaluate_codeblock(node.elseblock)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 190, in
 evaluate_codeblock
     raise e
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 182, in
 evaluate_codeblock
     self.evaluate_statement(cur)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 198, in
 evaluate_statement
     self.assignment(cur)
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 635, in
 assignment
     value = self.evaluate_statement(node.value)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 196, in
 evaluate_statement
     return self.function_call(cur)
            ^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/interpreterbase.py", line 521, in
 function_call
     res = func(node, func_args, kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 826, in
 wrapped
     return f(*wrapped_args, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 826, in
 wrapped
     return f(*wrapped_args, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 826, in
 wrapped
     return f(*wrapped_args, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   [Previous line repeated 4 more times]
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 109, in
 wrapped
     ret = f(*wrapped_args, **wrapped_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 127, in
 wrapped
     return f(*wrapped_args, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 277, in
 wrapper
     return f(*nargs, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreterbase/decorators.py", line 596, in
 wrapper
     return f(*wrapped_args, **wrapped_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreter/interpreter.py", line 1774, in
 func_dependency
     d = df.lookup(kwargs)
         ^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreter/dependencyfallbacks.py", line 355, in
 lookup
     dep = func(kwargs, func_args, func_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/interpreter/dependencyfallbacks.py", line 87, in
 _do_dependency
     dep = dependencies.find_external_dependency(name, self.environment,
 kwargs)
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/dependencies/detect.py", line 124, in
 find_external_dependency
     d = c()
         ^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/dependencies/blas_lapack.py", line 524, in __init__
     if environment.machines[for_machine].is_darwin() and
 self.check_macOS_recent_enough():
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/Users/rob/Development/git Repos/numpy/vendored-
 meson/meson/mesonbuild/dependencies/blas_lapack.py", line 529, in
 check_macOS_recent_enough
     sdk_version = subprocess.run(cmd, capture_output=True, check=True,
 text=True).stdout.strip()
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File
 "/opt/local/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/subprocess.py",
 line 571, in run
     raise CalledProcessError(retcode, process.args,
 subprocess.CalledProcessError: Command '['xcrun', '-sdk', 'macosx',
 '--show-sdk-version']' returned non-zero exit status 64.

 ../../numpy/meson.build:119:13: ERROR: Unhandled python exception

     This is a Meson bug and should be reported!

 ERROR Backend subprocess exited when trying to invoke build_wheel
 Grinchs-Mac-Pro-2:numpy rob$
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/68545#comment:10>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list