Actions
Bug #20961
openMMTk build on macOS missing librubygc.mmtk.bundle
Status:
Open
Assignee:
-
Target version:
-
ruby -v:
ruby 3.4.0dev (2024-12-18 master 9715131c32) +YJIT +MN +PRISM [arm64-darwin24.2.0]
Description
Hi! I'm excited about the new modular GC feature. I just wanted to report that when I build Ruby 3.4.0-rc1 with MMTk on latest macOS 15.2 I seem to be encountering a linking issue. Whether I cargo build --release
or ruby extconf.rb && make
a target/release/libmmtk_ruby.dylib
is created. A make modular-gc MODULAR_GC=mmtk
then seems to expect a target/release/librubygc.mmtk.bundle
, which doesn't exist. I briefly had it working but now can't reproduce the working order.
Reproduction steps:
brew install gmp jemalloc libffi libyaml openssl@3 readline rust zlib
curl https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.0-rc1.tar.xz | tar -x
cd ruby-3.4.0-rc1
./configure \
--prefix="$HOME/.rubies/ruby-3.4.0-rc1" \
--with-libyaml-dir="$(brew --prefix libyaml)" \
--with-openssl-dir="$(brew --prefix openssl@3)" \
--with-readline-dir="$(brew --prefix readline)" \
--with-zlib-dir="$(brew --prefix zlib)" \
--with-opt-dir="$(brew --prefix gmp):$(brew --prefix jemalloc)" \
--with-jemalloc \
--with-modular-gc="gc/mmtk/target/release"
cargo build --release --manifest-path=gc/mmtk/Cargo.toml
make -j miniruby modular-gc MODULAR_GC=mmtk
I keep getting errors similar to:
ruby_modular_gc_init: Shared library /Users/havenwood/src/ruby-3.4.0-rc1/gc/mmtk/target/release/librubygc.mmtk.bundle cannot be opened: dlopen(/Users/havenwood/src/ruby-3.4.0-rc1/gc/mmtk/target/release/librubygc.mmtk.bundle, 0x0009): tried: '/Users/havenwood/src/ruby-3.4.0-rc1/gc/mmtk/target/release/librubygc.mmtk.bundle' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/havenwood/src/ruby-3.4.0-rc1/gc/mmtk/target/release/librubygc.mmtk.bundle' (no such file), '/Users/havenwood/src/ruby-3.4.0-rc1/gc/mmtk/target/release/librubygc.mmtk.bundle' (no such file)
The latest nightly Ruby I tried produced the same missing .bundle
error. I'm very much looking forward to 3.4.0 and the introduction of the new pluggable GC feature! Thank you!
Actions
Like0
Like0Like0Like0Like1