Skip to content

Building fails on Fedora 42 #140

@jakob-lilliemarck

Description

@jakob-lilliemarck

I just installed the latest official build of Fedora 42 (KDE plasma) and am running into issue strying to install a Ruby on Rails project that depends on this package.

From the mkmf.rb logfile:

/home/jakob/.rvm/rubies/ruby-3.2.7/include/ruby-3.2.0/ruby/internal/scan_args.h:390:30: note: ‘bool’ is defined in header ‘<stdbool.h>’; this is probably fixable by adding ‘#include <stdbool.h>’
/home/jakob/.rvm/rubies/ruby-3.2.7/include/ruby-3.2.0/ruby/internal/scan_args.h:390:43: error: unknown type name ‘bool’

trying to bundle install a Ruby project using:

Fedora Linux 42 (KDE Plasma)
Ruby 3.2.3
GCC 15.1.1-2

The issue is with io-event:

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /home/jakob/.rvm/gems/ruby-3.2.7/gems/io-event-1.1.7/ext
/home/jakob/.rvm/rubies/ruby-3.2.7/bin/ruby extconf.rb
checking for rb_ext_ractor_safe()... *** 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.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/home/jakob/.rvm/rubies/ruby-3.2.7/bin/$(RUBY_BASE_NAME)
/home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:490:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.

        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:583:in `try_link0'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:601:in `try_link'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:812:in `try_func'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:1116:in `block in have_func'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:989:in `block in checking_for'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:354:in `block (2 levels) in postpone'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:324:in `open'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:354:in `block in postpone'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:324:in `open'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:350:in `postpone'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:988:in `checking_for'
        from /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/mkmf.rb:1115:in `have_func'
        from extconf.rb:42:in `<main>'

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /home/jakob/.rvm/gems/ruby-3.2.7/extensions/x86_64-linux/3.2.0/io-event-1.1.7/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /home/jakob/.rvm/gems/ruby-3.2.7/gems/io-event-1.1.7 for inspection.
Results logged to /home/jakob/.rvm/gems/ruby-3.2.7/extensions/x86_64-linux/3.2.0/io-event-1.1.7/gem_make.out

  /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/rubygems/ext/builder.rb:119:in `run'
  /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/rubygems/ext/ext_conf_builder.rb:28:in `build'
  /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/rubygems/ext/builder.rb:187:in `build_extension'
  /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/rubygems/ext/builder.rb:221:in `block in build_extensions'
  /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/rubygems/ext/builder.rb:218:in `each'
  /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/rubygems/ext/builder.rb:218:in `build_extensions'
  /home/jakob/.rvm/rubies/ruby-3.2.7/lib/ruby/3.2.0/rubygems/installer.rb:846:in `build_extensions'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/rubygems_gem_installer.rb:72:in `build_extensions'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/rubygems_gem_installer.rb:28:in `install'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/source/rubygems.rb:200:in `install'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/installer/gem_installer.rb:54:in `install'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/installer/gem_installer.rb:16:in `install_from_spec'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/installer/parallel_installer.rb:167:in `do_install'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/installer/parallel_installer.rb:158:in `block in worker_pool'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/worker.rb:62:in `apply_func'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/worker.rb:57:in `block in process_queue'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/worker.rb:54:in `loop'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/worker.rb:54:in `process_queue'
  /home/jakob/.rvm/gems/ruby-3.2.7/gems/bundler-2.4.7/lib/bundler/worker.rb:90:in `block (2 levels) in create_threads'

An error occurred while installing io-event (1.1.7), and Bundler cannot continue.

In Gemfile:
  async-websocket was resolved to 0.8.0, which depends on
    async-io was resolved to 1.34.3, which depends on
      async was resolved to 2.5.0, which depends on
        io-event

Feels like I have installed every conceivable development tools package there is 🤷
I originally posted on this merged PR, as that was the one I found when I searched for this issue. It seems to describe exactly what I am seeing, however, even though it is merged I get the error 🤔

#137

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions