Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

seven-zip impeding me moving to Ruby 3.4 #21

Open
opoudjis opened this issue Feb 28, 2025 · 6 comments
Open

seven-zip impeding me moving to Ruby 3.4 #21

opoudjis opened this issue Feb 28, 2025 · 6 comments
Assignees
Labels
bug Something isn't working

Comments

@opoudjis
Copy link

opoudjis commented Feb 28, 2025

I am trying to move my dev environment to Ruby 3.4 on Mac, and can't:

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

    current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
/Users/nickn/.rbenv/versions/3.4.2/bin/ruby extconf.rb
checking for ruby/thread.h... yes
creating Makefile

current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250228-73529-9zzh6c sitelibdir\=./.gem.20250228-73529-9zzh6c clean

current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250228-73529-9zzh6c sitelibdir\=./.gem.20250228-73529-9zzh6c
compiling seven_zip_archive.cpp
make: *** [seven_zip_archive.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2 for inspection.
Results logged to /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/extensions/arm64-darwin-24/3.4.0/seven-zip-1.4.2/gem_make.out

  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:126:in 'Gem::Ext::Builder.run'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:52:in 'block in Gem::Ext::Builder.make'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:44:in 'Array#each'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:44:in 'Gem::Ext::Builder.make'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/ext_conf_builder.rb:44:in 'Gem::Ext::ExtConfBuilder.build'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:195:in 'Gem::Ext::Builder#build_extension'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:229:in 'block in Gem::Ext::Builder#build_extensions'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:226:in 'Array#each'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:226:in 'Gem::Ext::Builder#build_extensions'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/installer.rb:844:in 'Gem::Installer#build_extensions'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/rubygems_gem_installer.rb:111:in
'Bundler::RubyGemsGemInstaller#build_extensions'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/rubygems_gem_installer.rb:30:in
'Bundler::RubyGemsGemInstaller#install'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/source/rubygems.rb:205:in 'Bundler::Source::Rubygems#install'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/gem_installer.rb:55:in
'Bundler::GemInstaller#install'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/gem_installer.rb:17:in
'Bundler::GemInstaller#install_from_spec'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/parallel_installer.rb:133:in
'Bundler::ParallelInstaller#do_install'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/parallel_installer.rb:124:in 'block in
Bundler::ParallelInstaller#worker_pool'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:62:in 'Bundler::Worker#apply_func'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:57:in 'block in Bundler::Worker#process_queue'
  <internal:kernel>:168:in 'Kernel#loop'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:54:in 'Bundler::Worker#process_queue'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:90:in 'block (2 levels) in
Bundler::Worker#create_threads'

An error occurred while installing seven-zip (1.4.2), and Bundler cannot continue.

In Gemfile:
  metanorma-standoc was resolved to 3.0.0, which depends on
    metanorma was resolved to 2.1.2, which depends on
      fontist was resolved to 1.21.2, which depends on
        excavate was resolved to 0.3.7, which depends on
          seven-zip


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

    current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
/Users/nickn/.rbenv/versions/3.4.2/bin/ruby extconf.rb
checking for ruby/thread.h... yes
creating Makefile

current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250228-73529-9zzh6c sitelibdir\=./.gem.20250228-73529-9zzh6c clean

current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250228-73529-9zzh6c sitelibdir\=./.gem.20250228-73529-9zzh6c
compiling seven_zip_archive.cpp
make: *** [seven_zip_archive.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2 for inspection.
Results logged to /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/extensions/arm64-darwin-24/3.4.0/seven-zip-1.4.2/gem_make.out

  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:126:in 'Gem::Ext::Builder.run'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:52:in 'block in Gem::Ext::Builder.make'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:44:in 'Array#each'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:44:in 'Gem::Ext::Builder.make'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/ext_conf_builder.rb:44:in 'Gem::Ext::ExtConfBuilder.build'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:195:in 'Gem::Ext::Builder#build_extension'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:229:in 'block in Gem::Ext::Builder#build_extensions'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:226:in 'Array#each'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/ext/builder.rb:226:in 'Gem::Ext::Builder#build_extensions'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/site_ruby/3.4.0/rubygems/installer.rb:844:in 'Gem::Installer#build_extensions'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/rubygems_gem_installer.rb:111:in
'Bundler::RubyGemsGemInstaller#build_extensions'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/rubygems_gem_installer.rb:30:in
'Bundler::RubyGemsGemInstaller#install'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/source/rubygems.rb:205:in 'Bundler::Source::Rubygems#install'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/gem_installer.rb:55:in
'Bundler::GemInstaller#install'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/gem_installer.rb:17:in
'Bundler::GemInstaller#install_from_spec'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/parallel_installer.rb:133:in
'Bundler::ParallelInstaller#do_install'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/installer/parallel_installer.rb:124:in 'block in
Bundler::ParallelInstaller#worker_pool'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:62:in 'Bundler::Worker#apply_func'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:57:in 'block in Bundler::Worker#process_queue'
  <internal:kernel>:168:in 'Kernel#loop'
  /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:54:in 'Bundler::Worker#process_queue'
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/bundler-2.6.3/lib/bundler/worker.rb:90:in 'block (2 levels) in
Bundler::Worker#create_threads'

An error occurred while installing seven-zip (1.4.2), and Bundler cannot continue.

In Gemfile:
  metanorma-standoc was resolved to 3.0.0, which depends on
    metanorma was resolved to 2.1.2, which depends on
      fontist was resolved to 1.21.2, which depends on
        excavate was resolved to 0.3.7, which depends on
          seven-zip


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

I gather this is a known issue, and we have been working on workarounds. Please advise.

@opoudjis opoudjis added the bug Something isn't working label Feb 28, 2025
@opoudjis opoudjis added this to Fontist Feb 28, 2025
@github-project-automation github-project-automation bot moved this to TRIAGE in Fontist Feb 28, 2025
@maxirmx
Copy link

maxirmx commented Feb 28, 2025

Thank you, @opoudjis

I did not touch this gem for a couple of years but I will look at this issue
Do you mind to send me
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/extensions/arm64-darwin-24/3.4.0/seven-zip-1.4.2/gem_make.out ?

Thank you
cc @ronaldtse

@opoudjis
Copy link
Author

current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
/Users/nickn/.rbenv/versions/3.4.2/bin/ruby extconf.rb
checking for ruby/thread.h... yes
creating Makefile

current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250228-73529-9zzh6c sitelibdir\=./.gem.20250228-73529-9zzh6c clean

current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250228-73529-9zzh6c sitelibdir\=./.gem.20250228-73529-9zzh6c
compiling seven_zip_archive.cpp
make: *** [seven_zip_archive.o] Error 1

make failed, exit code 2

@maxirmx
Copy link

maxirmx commented Feb 28, 2025

I could not reproduce it so it is some setup incompatibility

Could you please send me the output from
cc --version
and
gem install -V seven-zip

Thank you

@opoudjis
Copy link
Author

opoudjis commented Mar 1, 2025

 cc --version
Apple clang version 16.0.0 (clang-1600.0.26.6)
Target: arm64-apple-darwin24.3.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

@opoudjis
Copy link
Author

opoudjis commented Mar 1, 2025

22:34:16 * ~/Documents/Arbeit/upwork/ribose/mn-requirements[main] $ gem install -V seven-zip
HEAD https://index.rubygems.org/versions
200 OK
GET https://index.rubygems.org/info/seven-zip
200 OK
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/.github/workflows/test-and-release.yml
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/.gitignore
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/Gemfile

....

/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/spec/seven_zip_password.7z
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/spec/seven_zip_ruby_spec.rb
/Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/spec/seven_zip_ruby_spec_helper.rb
Building native extensions. This could take a while...
current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
["/Users/nickn/.rbenv/versions/3.4.2/bin/ruby", "extconf.rb"]
checking for ruby/thread.h... yes
creating Makefile
current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
["make", "DESTDIR=", "sitearchdir=./.gem.20250301-52236-2hoeka", "sitelibdir=./.gem.20250301-52236-2hoeka", "clean"]
current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
["make", "DESTDIR=", "sitearchdir=./.gem.20250301-52236-2hoeka", "sitelibdir=./.gem.20250301-52236-2hoeka"]
compiling seven_zip_archive.cpp
make: *** [seven_zip_archive.o] Error 1
ERROR:  Error installing seven-zip:
	ERROR: Failed to build gem native extension.

    current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
/Users/nickn/.rbenv/versions/3.4.2/bin/ruby extconf.rb
current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250301-52236-2hoeka sitelibdir\=./.gem.20250301-52236-2hoeka clean
current directory: /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2/ext/seven_zip_ruby
make DESTDIR\= sitearchdir\=./.gem.20250301-52236-2hoeka sitelibdir\=./.gem.20250301-52236-2hoeka
Building has failed. See above output for more information on the failure.
make failed, exit code 2

Gem files will remain installed in /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/gems/seven-zip-1.4.2 for inspection.
Results logged to /Users/nickn/.rbenv/versions/3.4.2/lib/ruby/gems/3.4.0/extensions/arm64-darwin-24/3.4.0/seven-zip-1.4.2/gem_make.out

@maxirmx
Copy link

maxirmx commented Mar 2, 2025

@opoudjis
Please try v1.7.0.rc1 https://rubygems.org/gems/seven-zip/versions/1.7.0.rc1
If it does not work please run it with -V

Thank you

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: TRIAGE
Development

No branches or pull requests

2 participants