ruby / ruby/rbs

gnu99 check in extconf seems to prevent Makefile generation on JRuby, MacOS 15

Open
#2,433 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Ruby
Stars
2.2k
Forks
256
Avg merge
6d 17h
Merged PRs (30d)
37

Description

A check for the flag -std=gnu99 appears to fail and prevent generating the Makefile on JRuby. Other gems with "plain" C libraries seem to install correctly on this system (JRuby, Java 21, MacOS 15):

$ bundle exec rake compile
Source locally installed gems is ignoring #<Bundler::StubSpecification name=resolv version=0.6.0 platform=ruby> because it is missing extensions
🚨🚨🚨🚨 Skipping RubyMemcheck: #<LoadError: no such file to load -- ruby_memcheck> 🚨🚨🚨🚨
mkdir -p tmp/java/rbs_extension/3.4.2
cd tmp/java/rbs_extension/3.4.2
/Users/headius/work/jruby/bin/jruby -I. ../../../../ext/rbs_extension/extconf.rb
checking for whether -std=gnu99 is accepted as CFLAGS... *** ../../../../ext/rbs_extension/extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

I have not investigated this yet myself.

Note that in order to bundle, some gems need to be masked out as described in #2432.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ext/rbs_extension/extconf.rb and the mkmf.log produced by the shown JRuby command. Reproduce the failed Makefile generation on JRuby with Java 21 and macOS 15, then confirm that the extension can generate its Makefile and still builds in the affected environment.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.