Skip to content

Homebrew ollama 0.15.5 on Apple Silicon prints MLX: Failed to load symbol: mlx_metal_device_info with mlx-c 0.5.0 (go generate/build tags mismatch) #266704

@ohzls

Description

@ohzls

brew config AND brew doctor output OR brew gist-logs <formula> link

HOMEBREW_VERSION: 5.0.14-19-gea0351c
ORIGIN: https://github.com/Homebrew/brew
HEAD: ea0351ca9dda55624657ee78812f399c6c0e8113
Last commit: 17 hours ago
Branch: main
Core tap JSON: 10 Feb 04:58 UTC
Core cask tap JSON: 10 Feb 04:58 UTC
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DOWNLOAD_CONCURRENCY: 28
HOMEBREW_FORBID_PACKAGES_FROM_PATHS: set
HOMEBREW_MAKE_JOBS: 14
HOMEBREW_NO_COLOR: set
HOMEBREW_SORBET_RUNTIME: set
Homebrew Ruby: 3.4.8 => /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.4.8/bin/ruby
Clang: 17.0.0 build 1700
Git: 2.52.0 => /opt/homebrew/bin/git
Curl: 8.7.1 => /usr/bin/curl
macOS: 26.2-arm64
CLT: 26.2.0.0.1.1764812424
Xcode: 26.2

(AND)

seongwonseo@seongwonui-Macmini ~ % brew doctor
Your system is ready to brew.
seongwonseo@seongwonui-Macmini ~ %

Verification

  • My brew doctor output says Your system is ready to brew. and am still able to reproduce my issue.
  • I ran brew update and am still able to reproduce my issue.
  • I have resolved all warnings from brew doctor and that did not fix my problem.
  • I searched for recent similar issues at https://github.com/Homebrew/homebrew-core/issues?q=is%3Aissue and found no duplicates.
  • My issue is not about a failure to build a formula from source.

What were you trying to do (and why)?

I installed Ollama via Homebrew on Apple Silicon and tried to run it (ollama serve / ollama -h) for local LLM inference.

What happened (include all command output)?

After installing ollama (0.15.5) and mlx-c (0.5.0), running Ollama prints an MLX dynamic loader warning:

$ /opt/homebrew/Cellar/ollama/0.15.5/bin/ollama -h
MLX: Failed to load symbol: mlx_metal_device_info
...

(or)

$ OLLAMA_FLASH_ATTENTION=1 OLLAMA_KV_CACHE_TYPE=q8_0 ollama serve
MLX: Failed to load symbol: mlx_metal_device_info
...
Listening on 127.0.0.1:11434 (version 0.15.5)

Also, mlx-c 0.5.0 does not export that symbol:
$ nm -gU /opt/homebrew/Cellar/mlx-c/0.5.0/lib/libmlxc.dylib | rg "mlx_metal_device_info"
(no output)

What did you expect to happen?

Ollama should start without MLX missing-symbol warnings. The packaged build should have MLX wrappers consistent with the installed mlx-c version.

Step-by-step reproduction instructions (by running brew commands)

brew update
brew install mlx-c ollama

# Repro (either one):
/opt/homebrew/bin/ollama -h
# or
OLLAMA_FLASH_ATTENTION=1 OLLAMA_KV_CACHE_TYPE=q8_0 /opt/homebrew/bin/ollama serve

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions