Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (mlx) #1839

Open
caseybasichis opened this issue Feb 6, 2025 · 5 comments

Comments

@caseybasichis
Copy link

Pip wheels are not building?

pip install git+https://github.com/ml-explore/mlx.git

...
      -- Build files have been written to: /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-u5coyp2w/build/temp.macosx-11.0-arm64-cpython-311/mlx.core
      [  1%] Building arg_reduce.air
      [  2%] Building gemv_masked.air
      [  3%] Building steel_gemm_splitk.air
      [  3%] Building steel_gemm_masked.air
      [  4%] Building steel_gemm_fused.air
      [  4%] Building steel_conv_general.air
      [  5%] Building steel_conv.air
      [  6%] Building unary.air
      [  6%] Building ternary.air
      [  6%] Building sort.air
      [  7%] Building softmax.air
      [  7%] Building scan.air
      [  8%] Building quantized.air
      [  9%] Building reduce.air
      [ 10%] Building fft.air
      [ 11%] Building copy.air
      [ 12%] Building binary_two.air
      [ 12%] Building binary.air
      [ 12%] Building arange.air
      [ 13%] Building steel_attention.air
      [ 14%] Building scaled_dot_product_attention.air
      [ 14%] Building rope.air
      [ 15%] Building rms_norm.air
      [ 15%] Building random.air
      [ 15%] Building layer_norm.air
      [ 15%] Building gemv.air
      [ 15%] Building conv.air
      [ 16%] Building mlx.metallib
      [ 16%] Built target mlx-metallib
      [ 17%] Generating compiled_preamble.cpp
      [ 17%] Built target cpu_compiled_preamble
      [ 17%] Building C object mlx/io/CMakeFiles/gguflib.dir/__/__/_deps/gguflib-src/fp16.c.o
      [ 18%] Building C object mlx/io/CMakeFiles/gguflib.dir/__/__/_deps/gguflib-src/gguflib.c.o
      [ 18%] Linking C static library libgguflib.a
      [ 18%] Built target gguflib
      [ 19%] Generating jit/utils.cpp
      [ 19%] Built target utils
      [ 20%] Generating jit/unary_ops.cpp
      [ 20%] Built target unary_ops
      [ 20%] Generating jit/binary_ops.cpp
      [ 20%] Built target binary_ops
      [ 20%] Generating jit/ternary_ops.cpp
      [ 20%] Built target ternary_ops
      [ 21%] Generating jit/reduce_utils.cpp
      [ 21%] Built target reduce_utils
      [ 21%] Generating jit/scatter.cpp
      [ 21%] Built target scatter
      [ 21%] Generating jit/gather.cpp
      [ 21%] Built target gather
      [ 22%] Generating jit/gather_axis.cpp
      [ 22%] Built target gather_axis
      [ 23%] Generating jit/scatter_axis.cpp
      [ 23%] Built target scatter_axis
      [ 24%] Generating jit/hadamard.cpp
      [ 24%] Built target hadamard
      [ 25%] Building CXX object CMakeFiles/mlx.dir/mlx/allocator.cpp.o
      [ 25%] Building CXX object CMakeFiles/mlx.dir/mlx/array.cpp.o
      [ 26%] Building CXX object CMakeFiles/mlx.dir/mlx/compile.cpp.o
      [ 26%] Building CXX object CMakeFiles/mlx.dir/mlx/device.cpp.o
      [ 27%] Building CXX object CMakeFiles/mlx.dir/mlx/dtype.cpp.o
      [ 27%] Building CXX object CMakeFiles/mlx.dir/mlx/export.cpp.o
      [ 28%] Building CXX object CMakeFiles/mlx.dir/mlx/einsum.cpp.o
      [ 29%] Building CXX object CMakeFiles/mlx.dir/mlx/fast.cpp.o
      [ 29%] Building CXX object CMakeFiles/mlx.dir/mlx/fft.cpp.o
      [ 30%] Building CXX object CMakeFiles/mlx.dir/mlx/ops.cpp.o
      [ 30%] Building CXX object CMakeFiles/mlx.dir/mlx/graph_utils.cpp.o
      [ 31%] Building CXX object CMakeFiles/mlx.dir/mlx/primitives.cpp.o
      [ 31%] Building CXX object CMakeFiles/mlx.dir/mlx/random.cpp.o
      [ 32%] Building CXX object CMakeFiles/mlx.dir/mlx/scheduler.cpp.o
      [ 32%] Building CXX object CMakeFiles/mlx.dir/mlx/transforms.cpp.o
      [ 33%] Building CXX object CMakeFiles/mlx.dir/mlx/utils.cpp.o
      [ 34%] Building CXX object CMakeFiles/mlx.dir/mlx/linalg.cpp.o
      [ 34%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/compiled.cpp.o
      [ 35%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/common.cpp.o
      [ 35%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/load.cpp.o
      [ 36%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/reduce.cpp.o
      [ 36%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/slicing.cpp.o
      [ 37%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/utils.cpp.o
      [ 38%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/arg_reduce.cpp.o
      [ 38%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/binary.cpp.o
      [ 39%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/conv.cpp.o
      [ 39%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/copy.cpp.o
      [ 40%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/eigh.cpp.o
      [ 40%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/fft.cpp.o
      [ 41%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/hadamard.cpp.o
      [ 42%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/matmul.cpp.o
      [ 42%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/gemms/cblas.cpp.o
      [ 43%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/masked_mm.cpp.o
      [ 43%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/primitives.cpp.o
      [ 44%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/quantized.cpp.o
      [ 44%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/reduce.cpp.o
      [ 45%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/scan.cpp.o
      [ 45%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/select.cpp.o
      [ 46%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/softmax.cpp.o
      [ 47%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/sort.cpp.o
      [ 47%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/threefry.cpp.o
      [ 48%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/indexing.cpp.o
      [ 48%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/qrf.cpp.o
      [ 50%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/svd.cpp.o
      [ 50%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/inverse.cpp.o
      [ 51%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/cholesky.cpp.o
      [ 52%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/unary.cpp.o
      [ 52%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/compiled_preamble.cpp.o
      [ 53%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/gemms/bnns.cpp.o
      [ 53%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/compiled.cpp.o
      [ 54%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/jit_compiler.cpp.o
      [ 54%] Building CXX object CMakeFiles/mlx.dir/mlx/distributed/primitives.cpp.o
      [ 55%] Building CXX object CMakeFiles/mlx.dir/mlx/distributed/ops.cpp.o
      [ 56%] Building CXX object CMakeFiles/mlx.dir/mlx/distributed/distributed.cpp.o
      [ 56%] Building CXX object CMakeFiles/mlx.dir/mlx/distributed/mpi/no_mpi.cpp.o
      [ 57%] Building CXX object CMakeFiles/mlx.dir/mlx/distributed/ring/ring.cpp.o
      [ 57%] Building CXX object CMakeFiles/mlx.dir/mlx/io/load.cpp.o
      [ 58%] Building CXX object CMakeFiles/mlx.dir/mlx/io/safetensors.cpp.o
      [ 58%] Building CXX object CMakeFiles/mlx.dir/mlx/io/gguf.cpp.o
      [ 59%] Building CXX object CMakeFiles/mlx.dir/mlx/io/gguf_quants.cpp.o
      [ 59%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/utils.cpp.o
      [ 60%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/unary_ops.cpp.o
      [ 61%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/binary_ops.cpp.o
      [ 61%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/ternary_ops.cpp.o
      [ 62%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/reduce_utils.cpp.o
      [ 62%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/scatter.cpp.o
      [ 63%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/gather.cpp.o
      [ 63%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/gather_axis.cpp.o
      [ 64%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/scatter_axis.cpp.o
      [ 65%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/jit/hadamard.cpp.o
      [ 65%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/nojit_kernels.cpp.o
      [ 66%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/allocator.cpp.o
      [ 66%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/binary.cpp.o
      [ 67%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/compiled.cpp.o
      [ 67%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/conv.cpp.o
      [ 68%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/copy.cpp.o
      [ 69%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/custom_kernel.cpp.o
      [ 69%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/distributed.cpp.o
      [ 70%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/metal/device.cpp.o
      /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-u5coyp2w/mlx/backend/metal/device.cpp:28:56: error: unrecognized platform name visionOS
          if (__builtin_available(macOS 15, iOS 18, tvOS 18, visionOS 2, *)) {
                                                             ^
      /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-u5coyp2w/mlx/backend/metal/device.cpp:30:63: error: unrecognized platform name visionOS
          } else if (__builtin_available(macOS 14, iOS 17, tvOS 17, visionOS 1, *)) {
                                                                    ^
      2 errors generated.
      make[2]: *** [CMakeFiles/mlx.dir/mlx/backend/metal/device.cpp.o] Error 1
      make[1]: *** [CMakeFiles/mlx.dir/all] Error 2
      make: *** [all] Error 2
      Traceback (most recent call last):
        File "/Users/caseybasichis/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/caseybasichis/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/Users/caseybasichis/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 438, in build_wheel
          return _build(['bdist_wheel', '--dist-info-dir', str(metadata_directory)])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 426, in _build
          return self._build_with_temp_dir(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 407, in _build_with_temp_dir
          self.run_setup()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 320, in run_setup
          exec(code, locals())
        File "<string>", line 174, in <module>
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/__init__.py", line 117, in setup
          return distutils.core.setup(**attrs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 186, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 202, in run_commands
          dist.run_commands()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 983, in run_commands
          self.run_command(cmd)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 999, in run_command
          super().run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1002, in run_command
          cmd_obj.run()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/command/bdist_wheel.py", line 379, in run
          self.run_command("build")
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 339, in run_command
          self.distribution.run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 999, in run_command
          super().run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1002, in run_command
          cmd_obj.run()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 136, in run
          self.run_command(cmd_name)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 339, in run_command
          self.distribution.run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 999, in run_command
          super().run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1002, in run_command
          cmd_obj.run()
        File "<string>", line 117, in run
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/command/build_ext.py", line 99, in run
          _build_ext.run(self)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 365, in run
          self.build_extensions()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 481, in build_extensions
          self._build_extensions_serial()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-_qq_jwm1/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 507, in _build_extensions_serial
          self.build_extension(ext)
        File "<string>", line 109, in build_extension
        File "/Users/caseybasichis/anaconda3/lib/python3.11/subprocess.py", line 571, in run
          raise CalledProcessError(retcode, process.args,
      subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--target', 'install', '--config', 'Release']' returned non-zero exit status 2.
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for mlx
Failed to build mlx
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (mlx)
@awni
Copy link
Member

awni commented Feb 6, 2025

What version of macOS are you on?

@caseybasichis
Copy link
Author

Just updated to 15.3 (24D60) -- still getting the same error.

@awni
Copy link
Member

awni commented Feb 6, 2025

It build fine for me on 15.3. What about xcode?

/usr/bin/xcodebuild -version

@caseybasichis
Copy link
Author

/usr/bin/xcodebuild -version
Xcode 16.2
Build version 16C5032a

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
(base) Caseys-MacBook-Pro:~ me$ pip install git+https://github.com/ml-explore/mlx.git
Collecting git+https://github.com/ml-explore/mlx.git
  Cloning https://github.com/ml-explore/mlx.git to /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb
  Running command git clone --filter=blob:none --quiet https://github.com/ml-explore/mlx.git /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb
  Resolved https://github.com/ml-explore/mlx.git to commit 1a1b2108ecfedfb8ccbfd63eadcc1c5f098fefee
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: mlx
  Building wheel for mlx (pyproject.toml) ... error
  error: subprocess-exited-with-error
  
  × Building wheel for mlx (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [262 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build/lib.macosx-11.0-arm64-cpython-311/mlx
      copying python/mlx/distributed_run.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx
      copying python/mlx/_os_warning.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx
      copying python/mlx/utils.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx
      copying python/mlx/extension.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx
      copying python/mlx/_reprlib_fix.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx
      copying python/mlx/__main__.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx
      creating build/lib.macosx-11.0-arm64-cpython-311/mlx/nn
      copying python/mlx/nn/__init__.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn
      copying python/mlx/nn/utils.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn
      copying python/mlx/nn/losses.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn
      copying python/mlx/nn/init.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn
      creating build/lib.macosx-11.0-arm64-cpython-311/mlx/optimizers
      copying python/mlx/optimizers/__init__.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/optimizers
      copying python/mlx/optimizers/optimizers.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/optimizers
      copying python/mlx/optimizers/schedulers.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/optimizers
      creating build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/convolution.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/quantized.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/embedding.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/recurrent.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/activations.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/containers.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/linear.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/pooling.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/__init__.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/upsample.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/transformer.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/dropout.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/positional_encoding.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/normalization.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/convolution_transpose.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      copying python/mlx/nn/layers/base.py -> build/lib.macosx-11.0-arm64-cpython-311/mlx/nn/layers
      running egg_info
      writing python/mlx.egg-info/PKG-INFO
      writing dependency_links to python/mlx.egg-info/dependency_links.txt
      writing entry points to python/mlx.egg-info/entry_points.txt
      writing requirements to python/mlx.egg-info/requires.txt
      writing top-level names to python/mlx.egg-info/top_level.txt
      reading manifest file 'python/mlx.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      adding license file 'LICENSE'
      writing manifest file 'python/mlx.egg-info/SOURCES.txt'
      copying python/mlx/py.typed -> build/lib.macosx-11.0-arm64-cpython-311/mlx
      running build_ext
      -- The C compiler identification is Clang 15.0.7
      -- The CXX compiler identification is Clang 15.0.7
      -- Detecting C compiler ABI info
      -- Detecting C compiler ABI info - done
      -- Check for working C compiler: /Users/me/anaconda3/bin/arm64-apple-darwin20.0.0-clang - skipped
      -- Detecting C compile features
      -- Detecting C compile features - done
      -- Detecting CXX compiler ABI info
      -- Detecting CXX compiler ABI info - done
      -- Check for working CXX compiler: /Users/me/anaconda3/bin/arm64-apple-darwin20.0.0-clang++ - skipped
      -- Detecting CXX compile features
      -- Detecting CXX compile features - done
      -- Building MLX for arm64 processor on Darwin
      -- Building METAL sources
      -- Building with macOS SDK version 15.2
      
      -- Accelerate found /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Accelerate.framework
      -- Checking for module 'mpi-c'
      --   No package 'mpi-c' found
      -- Could NOT find MPI_C (missing: MPI_C_LIB_NAMES MPI_C_HEADER_DIR MPI_C_WORKS)
      -- Checking for module 'mpi-cxx'
      --   No package 'mpi-cxx' found
      -- Could NOT find MPI_CXX (missing: MPI_CXX_LIB_NAMES MPI_CXX_HEADER_DIR MPI_CXX_WORKS)
      -- Could NOT find MPI (missing: MPI_C_FOUND MPI_CXX_FOUND)
      -- Downloading json
      -- Using the multi-header code from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/build/temp.macosx-11.0-arm64-cpython-311/mlx.core/_deps/json-src/include/
      -- Downloading gguflib
      -- Version: 10.2.1
      -- Build type: Release
      -- Performing Test HAS_NULLPTR_WARNING
      -- Performing Test HAS_NULLPTR_WARNING - Success
      -- Building Python bindings.
      -- Found Python: /Users/me/anaconda3/bin/python3.11 (found suitable version "3.11.6", minimum required is "3.8") found components: Interpreter Development.Module
      -- Configuring done (6.5s)
      -- Generating done (0.1s)
      CMake Warning:
        Manually-specified variables were not used by the project:
      
          CMAKE_LIBTOOL
      
      
      -- Build files have been written to: /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/build/temp.macosx-11.0-arm64-cpython-311/mlx.core
      [  0%] Building arg_reduce.air
      [  1%] Building gemv_masked.air
      [  2%] Building steel_gemm_splitk.air
      [  2%] Building steel_gemm_masked.air
      [  3%] Building steel_gemm_fused.air
      [  3%] Building steel_conv_general.air
      [  4%] Building steel_conv.air
      [  5%] Building unary.air
      [  5%] Building ternary.air
      [  5%] Building sort.air
      [  6%] Building softmax.air
      [  6%] Building scan.air
      [  7%] Building quantized.air
      [  7%] Building reduce.air
      [  8%] Building fft.air
      [  9%] Building copy.air
      [  9%] Building binary_two.air
      [ 10%] Building binary.air
      [ 11%] Building arange.air
      [ 12%] Building steel_attention.air
      [ 12%] Building fence.air
      [ 13%] Building scaled_dot_product_attention.air
      [ 13%] Building rope.air
      [ 14%] Building rms_norm.air
      [ 15%] Building random.air
      [ 15%] Building layer_norm.air
      [ 15%] Building gemv.air
      [ 16%] Building conv.air
      [ 16%] Building mlx.metallib
      [ 16%] Built target mlx-metallib
      [ 17%] Generating compiled_preamble.cpp
      [ 17%] Built target cpu_compiled_preamble
      [ 17%] Building C object mlx/io/CMakeFiles/gguflib.dir/__/__/_deps/gguflib-src/fp16.c.o
      [ 18%] Building C object mlx/io/CMakeFiles/gguflib.dir/__/__/_deps/gguflib-src/gguflib.c.o
      [ 18%] Linking C static library libgguflib.a
      [ 18%] Built target gguflib
      [ 19%] Generating jit/utils.cpp
      [ 19%] Built target utils
      [ 20%] Generating jit/unary_ops.cpp
      [ 20%] Built target unary_ops
      [ 20%] Generating jit/binary_ops.cpp
      [ 20%] Built target binary_ops
      [ 20%] Generating jit/ternary_ops.cpp
      [ 20%] Built target ternary_ops
      [ 21%] Generating jit/reduce_utils.cpp
      [ 21%] Built target reduce_utils
      [ 21%] Generating jit/scatter.cpp
      [ 21%] Built target scatter
      [ 21%] Generating jit/gather.cpp
      [ 21%] Built target gather
      [ 22%] Generating jit/gather_axis.cpp
      [ 22%] Built target gather_axis
      [ 23%] Generating jit/scatter_axis.cpp
      [ 23%] Built target scatter_axis
      [ 24%] Generating jit/hadamard.cpp
      [ 24%] Built target hadamard
      [ 24%] Building CXX object CMakeFiles/mlx.dir/mlx/allocator.cpp.o
      [ 25%] Building CXX object CMakeFiles/mlx.dir/mlx/array.cpp.o
      [ 26%] Building CXX object CMakeFiles/mlx.dir/mlx/compile.cpp.o
      [ 26%] Building CXX object CMakeFiles/mlx.dir/mlx/device.cpp.o
      [ 27%] Building CXX object CMakeFiles/mlx.dir/mlx/dtype.cpp.o
      [ 27%] Building CXX object CMakeFiles/mlx.dir/mlx/export.cpp.o
      [ 28%] Building CXX object CMakeFiles/mlx.dir/mlx/einsum.cpp.o
      [ 28%] Building CXX object CMakeFiles/mlx.dir/mlx/fast.cpp.o
      [ 29%] Building CXX object CMakeFiles/mlx.dir/mlx/fft.cpp.o
      [ 30%] Building CXX object CMakeFiles/mlx.dir/mlx/ops.cpp.o
      [ 30%] Building CXX object CMakeFiles/mlx.dir/mlx/graph_utils.cpp.o
      [ 31%] Building CXX object CMakeFiles/mlx.dir/mlx/primitives.cpp.o
      [ 31%] Building CXX object CMakeFiles/mlx.dir/mlx/random.cpp.o
      [ 32%] Building CXX object CMakeFiles/mlx.dir/mlx/scheduler.cpp.o
      [ 32%] Building CXX object CMakeFiles/mlx.dir/mlx/transforms.cpp.o
      [ 33%] Building CXX object CMakeFiles/mlx.dir/mlx/utils.cpp.o
      [ 33%] Building CXX object CMakeFiles/mlx.dir/mlx/linalg.cpp.o
      [ 34%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/compiled.cpp.o
      [ 35%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/common.cpp.o
      [ 35%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/load.cpp.o
      [ 36%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/reduce.cpp.o
      [ 36%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/slicing.cpp.o
      [ 37%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/common/utils.cpp.o
      [ 37%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/arg_reduce.cpp.o
      [ 38%] Building CXX object CMakeFiles/mlx.dir/mlx/backend/cpu/binary.cpp.o
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/binary.cpp:8:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/binary.h:11:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/simd.h:3:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/math.h:5:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/type.h:6:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/accelerate_simd.h:3:
      /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/simd/math.h:2015:91: error: no member named '__sincospif' in the global namespace; did you mean '__sincosf'?
      static SIMD_INLINE SIMD_NODEBUG void __tg_sincospi(float x, float *sinp, float *cosp) { ::__sincospif(x, sinp, cosp); }
                                                                                              ~~^
      /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/math.h:633:29: note: '__sincosf' declared here
      __header_always_inline void __sincosf(float __x, float *__sinp, float *__cosp) {
                                  ^
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/binary.cpp:8:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/binary.h:11:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/simd.h:3:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/math.h:5:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/type.h:6:
      In file included from /private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-req-build-f7v_xklb/mlx/backend/cpu/simd/accelerate_simd.h:3:
      /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/simd/math.h:2018:94: error: no member named '__sincospi' in the global namespace; did you mean '__sincos'?
      static SIMD_INLINE SIMD_NODEBUG void __tg_sincospi(double x, double *sinp, double *cosp) { ::__sincospi(x, sinp, cosp); }
                                                                                                 ~~^
      /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/math.h:638:29: note: '__sincos' declared here
      __header_always_inline void __sincos(double __x, double *__sinp, double *__cosp) {
                                  ^
      2 errors generated.
      make[2]: *** [CMakeFiles/mlx.dir/mlx/backend/cpu/binary.cpp.o] Error 1
      make[1]: *** [CMakeFiles/mlx.dir/all] Error 2
      make: *** [all] Error 2
      Traceback (most recent call last):
        File "/Users/me/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/me/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/Users/me/anaconda3/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 438, in build_wheel
          return _build(['bdist_wheel', '--dist-info-dir', str(metadata_directory)])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 426, in _build
          return self._build_with_temp_dir(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 407, in _build_with_temp_dir
          self.run_setup()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 320, in run_setup
          exec(code, locals())
        File "<string>", line 174, in <module>
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/__init__.py", line 117, in setup
          return distutils.core.setup(**attrs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 186, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 202, in run_commands
          dist.run_commands()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 983, in run_commands
          self.run_command(cmd)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 999, in run_command
          super().run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1002, in run_command
          cmd_obj.run()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/command/bdist_wheel.py", line 379, in run
          self.run_command("build")
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 339, in run_command
          self.distribution.run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 999, in run_command
          super().run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1002, in run_command
          cmd_obj.run()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 136, in run
          self.run_command(cmd_name)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 339, in run_command
          self.distribution.run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 999, in run_command
          super().run_command(command)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1002, in run_command
          cmd_obj.run()
        File "<string>", line 117, in run
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/command/build_ext.py", line 99, in run
          _build_ext.run(self)
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 365, in run
          self.build_extensions()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 481, in build_extensions
          self._build_extensions_serial()
        File "/private/var/folders/bd/1ybnp0w96cl9d0x35qllt7_r0000gn/T/pip-build-env-zdparvcl/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/build_ext.py", line 507, in _build_extensions_serial
          self.build_extension(ext)
        File "<string>", line 109, in build_extension
        File "/Users/me/anaconda3/lib/python3.11/subprocess.py", line 571, in run
          raise CalledProcessError(retcode, process.args,
      subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--target', 'install', '--config', 'Release']' returned non-zero exit status 2.
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for mlx
Failed to build mlx
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (mlx)

@awni
Copy link
Member

awni commented Feb 7, 2025

It's a different error now, what did you change?

Also the version of clang cmake is reporting (15.0) doesn't make sense for the version of xcode that you reported (16.2).

Maybe try uninstalling your the anaconda version and just use default Apple clang (/usr/bin/clang). Or you could pass CMAKE_ARGS="-DCMAKE_CXX_COMPILER=/usr/bin/clang

More generally it looks like your environment could be a bit wonky. It's not something we can easily help with since we can't reproduce it and don't have access much information about your setup. It could be worth installing miniconda from scratch and setting up a fresh environment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants