Skip to content

Conversation

@stemann
Copy link
Contributor

@stemann stemann commented Nov 9, 2024

No description provided.

@giordano giordano marked this pull request as draft November 11, 2024 12:01
@rveltz
Copy link

rveltz commented Nov 17, 2024

Is there an example of our to use this library?

@stemann stemann force-pushed the feature/mlx branch 10 times, most recently from 6395eba to e4f8203 Compare November 18, 2024 11:19
* Disabled linux-musl platforms.
* Disabled freebsd, and windows.
* Using PyPI wheel for aarch64-apple-darwin.
* Including metal-cpp in MLX build wrt. building MLX-C.
@stemann stemann changed the title WIP Added MLX Added MLX Nov 18, 2024
@stemann stemann marked this pull request as ready for review November 18, 2024 17:10
@stemann
Copy link
Contributor Author

stemann commented Nov 18, 2024

@rveltz Not yet.

@stemann stemann mentioned this pull request Nov 18, 2024
@stemann
Copy link
Contributor Author

stemann commented Nov 18, 2024

But soon stemann/MLX.jl#2

@rveltz
Copy link

rveltz commented Nov 18, 2024

:D

@stemann
Copy link
Contributor Author

stemann commented Nov 19, 2024

LGTM! , but I'm also just taking a quick stab at getting Windows support, so please ping before hitting merge :-)
🍏 💥 🪟
. All done! :-)

@stemann stemann marked this pull request as draft November 19, 2024 18:05
Also gave FreeBSD a chance.
@stemann stemann marked this pull request as ready for review November 19, 2024 18:33
@stemann stemann marked this pull request as draft November 19, 2024 19:02
stemann added a commit to stemann/mlx that referenced this pull request Nov 26, 2024
Also contributes to being able to build for *-w64-mingw32.

Cf. JuliaPackaging/Yggdrasil#9761
stemann added a commit to stemann/mlx that referenced this pull request Nov 26, 2024
Also contributes to being able to build for *-w64-mingw32.

Cf. JuliaPackaging/Yggdrasil#9761
stemann added a commit to stemann/mlx that referenced this pull request Nov 26, 2024
stemann added a commit to stemann/mlx that referenced this pull request Nov 26, 2024
@stemann
Copy link
Contributor Author

stemann commented Nov 26, 2024

Strange, I was surprised to not see a re-run for aarch64-apple-darwin: https://buildkite.com/julialang/yggdrasil/builds/15014

@stemann
Copy link
Contributor Author

stemann commented Nov 26, 2024

I get an audit fail locally for aarch64-apple-darwin:

[ Info: Beginning audit of /Users/jesper/dev/julia/Yggdrasil/M/MLX/build/aarch64-apple-darwin/vdbDp3Er/aarch64-apple-darwin20-libgfortran5-cxx11/destdir



[ Info: Checking lib/libmlx.dylib with RPath list String[]
[ Info: Ignored system libraries /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore, /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate, /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation, /usr/lib/libobjc.A.dylib, /usr/lib/libc++.1.dylib, /System/Library/Frameworks/Metal.framework/Versions/A/Metal, /usr/lib/libSystem.B.dylib
[10:30:35] CandidateCDHash sha1=29ca20ed21fbb84a0718d929db305dcc61cc761d
[10:30:35] CandidateCDHash sha256=29b9d22fdb8e9b12047a91f540cf134edf5f6514
[10:30:35] Hash choices=sha1,sha256
[10:30:35] CDHash=29b9d22fdb8e9b12047a91f540cf134edf5f6514
llvm-objdump: error: 'mlx.metallib': The file was not recognized as a valid object file
ERROR: LoadError: type MetallibHeader has no field ncmds
Stacktrace:
  [1] getproperty
    @ ./Base.jl:42 [inlined]
  [2] ObjectFile.MachO.MachOLoadCmds(oh::ObjectFile.MachO.MachOHandle{IOStream})
    @ ObjectFile.MachO ~/.julia/packages/ObjectFile/eLzIt/src/MachO/MachOLoadCmd.jl:123
  [3] isdynamic
    @ ~/.julia/packages/ObjectFile/eLzIt/src/MachO/MachOHandle.jl:54 [inlined]
  [4] (::BinaryBuilder.Auditor.var"#99#106"{Platform, Bool, Bool, Bool, Prefix, String, Vector{String}, String})(oh::ObjectFile.MachO.MachOHandle{IOStream})
    @ BinaryBuilder.Auditor ~/.julia/packages/BinaryBuilder/HTdhp/src/Auditor.jl:104
  [5] foreach
    @ ./abstractarray.jl:2712 [inlined]
  [6] (::BinaryBuilder.Auditor.var"#98#105"{Platform, Bool, Bool, Bool, Prefix, String, Vector{String}, String})(ohs::Vector{ObjectFile.MachO.MachOHandle{IOStream}})
    @ BinaryBuilder.Auditor ~/.julia/packages/BinaryBuilder/HTdhp/src/Auditor.jl:85
  [7] readmeta(f::BinaryBuilder.Auditor.var"#98#105"{Platform, Bool, Bool, Bool, Prefix, String, Vector{String}, String}, file::String)
    @ ObjectFile ~/.julia/packages/ObjectFile/eLzIt/src/Abstract/ObjectHandle.jl:160
  [8] audit(prefix::Prefix, src_name::String; io::Base.TTY, platform::Platform, verbose::Bool, silent::Bool, autofix::Bool, has_csl::Bool, require_license::Bool)
    @ BinaryBuilder.Auditor ~/.julia/packages/BinaryBuilder/HTdhp/src/Auditor.jl:84
  [9] autobuild(dir::AbstractString, src_name::AbstractString, src_version::VersionNumber, sources::Vector{<:BinaryBuilderBase.AbstractSource}, script::AbstractString, platforms::Vector, products::Vector{<:Product}, dependencies::Vector{<:BinaryBuilderBase.AbstractDependency}; verbose::Bool, debug::Bool, skip_audit::Bool, ignore_audit_errors::Bool, autofix::Bool, code_dir::Union{Nothing, String}, require_license::Bool, dont_dlopen::Bool, kwargs::Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}})
    @ BinaryBuilder ~/.julia/packages/BinaryBuilder/HTdhp/src/AutoBuild.jl:923
 [10] build_tarballs(ARGS::Any, src_name::Any, src_version::Any, sources::Any, script::Any, platforms::Any, products::Any, dependencies::Any; julia_compat::String, validate_name::Bool, kwargs::Base.Pairs{Symbol, V, Tuple{Vararg{Symbol, N}}, NamedTuple{names, T}} where {V, N, names, T<:Tuple{Vararg{Any, N}}})
    @ BinaryBuilder ~/.julia/packages/BinaryBuilder/HTdhp/src/AutoBuild.jl:367
 [11] top-level scope
    @ ~/dev/julia/Yggdrasil/M/MLX/build_tarballs.jl:114
in expression starting at /Users/jesper/dev/julia/Yggdrasil/M/MLX/build_tarballs.jl:114

For w64-ming32 builds ability to find BLAS libraries.
…ermissions

To avoid issue with `ObjectFile.isdynamic` when called on `mlx.metallib`.
@stemann stemann requested a review from giordano November 26, 2024 12:54
@giordano giordano merged commit d1d91a4 into JuliaPackaging:master Nov 26, 2024
31 checks passed
@stemann stemann deleted the feature/mlx branch November 26, 2024 14:36
awni pushed a commit to ml-explore/mlx that referenced this pull request Nov 27, 2024
Also contributes to being able to build for *-w64-mingw32.

Cf. JuliaPackaging/Yggdrasil#9761
stemann added a commit to stemann/mlx that referenced this pull request Nov 28, 2024
awni pushed a commit to ml-explore/mlx that referenced this pull request Nov 28, 2024
* CMake: Enabled using Accelerate on x86_64 / x64

Cf. JuliaPackaging/Yggdrasil#9761

* CMake: Removed superfluous MLX_BUILD_ARM
@rveltz
Copy link

rveltz commented Dec 4, 2024

It seems stalled, is there any issue (can't wait trying this)

@stemann
Copy link
Contributor Author

stemann commented Dec 4, 2024

@rveltz MLX on Julia is definitely not stalled - just need #9809 merged to proceed with MLX.jl.

Feel free to contribute and/or open issues (e.g. describing your use case).

0x110115 pushed a commit to 0x110115/mlx that referenced this pull request Aug 30, 2025
Also contributes to being able to build for *-w64-mingw32.

Cf. JuliaPackaging/Yggdrasil#9761
0x110115 pushed a commit to 0x110115/mlx that referenced this pull request Aug 30, 2025
* CMake: Enabled using Accelerate on x86_64 / x64

Cf. JuliaPackaging/Yggdrasil#9761

* CMake: Removed superfluous MLX_BUILD_ARM
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

Successfully merging this pull request may close these issues.

3 participants