Skip to content

Fails to compile gem on Sequoia 15.1 #82

Description

@mtrepanier

I have uninstalled all ruby version and rbenv and ruby-build. Deleted all folders also.

When I run gem install unf_ext --verbose with verbose to get more info, this what I have.

Ruby 3.4.1
gem version 0.0.9.1

macos sequoi 15.1
xcode 16

Apple clang version 16.0.0 (clang-1600.0.26.6)
Target: arm64-apple-darwin24.1.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
xcode-select: note: Command line tools are already installed. Use "Software Update" in System Settings or the softwareupdate command line interface to install updates
gem install unf_ext --verbose

HEAD https://index.rubygems.org/versions
200 OK
GET https://index.rubygems.org/info/unf_ext
200 OK
Downloading gem unf_ext-0.0.9.1.gem
GET https://index.rubygems.org/gems/unf_ext-0.0.9.1.gem
Fetching unf_ext-0.0.9.1.gem
200 OK
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/.document
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/.github/workflows/unf_ext.yml
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/.gitignore
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/CHANGELOG.md
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/Gemfile
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/LICENSE.txt
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/README.md
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/Rakefile
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/extconf.rb
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/unf.cc
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/unf/normalizer.hh
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/unf/table.hh
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/unf/trie/char_stream.hh
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/unf/trie/node.hh
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/unf/trie/searcher.hh
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext/unf/util.hh
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/lib/unf_ext.rb
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/lib/unf_ext/version.rb
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/test/helper.rb
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/test/normalization-test.txt
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/test/test_unf_ext.rb
/Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/unf_ext.gemspec
Building native extensions. This could take a while...
current directory: /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext
["/Users/martin.trepanier/.rbenv/versions/3.4.1/bin/ruby", "extconf.rb"]
checking for -lstdc++... yes
creating Makefile
current directory: /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext
["make", "DESTDIR=", "sitearchdir=./.gem.20250107-29331-7wdqt1", "sitelibdir=./.gem.20250107-29331-7wdqt1", "clean"]
current directory: /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext
["make", "DESTDIR=", "sitearchdir=./.gem.20250107-29331-7wdqt1", "sitelibdir=./.gem.20250107-29331-7wdqt1"]
compiling unf.cc
make: *** [unf.o] Error 1
ERROR:  Error installing unf_ext:
	ERROR: Failed to build gem native extension.

    current directory: /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext
/Users/martin.trepanier/.rbenv/versions/3.4.1/bin/ruby extconf.rb
current directory: /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext
make DESTDIR\= sitearchdir\=./.gem.20250107-29331-7wdqt1 sitelibdir\=./.gem.20250107-29331-7wdqt1 clean
current directory: /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1/ext/unf_ext
make DESTDIR\= sitearchdir\=./.gem.20250107-29331-7wdqt1 sitelibdir\=./.gem.20250107-29331-7wdqt1
Building has failed. See above output for more information on the failure.
make failed, exit code 2

Gem files will remain installed in /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/unf_ext-0.0.9.1 for inspection.
Results logged to /Users/martin.trepanier/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/extensions/arm64-darwin-24/3.4.0/unf_ext-0.0.9.1/gem_make.out

If I look at the mkmf.log file for the gem in .rbenv folder, this is what I have

have_library: checking for -lstdc++... -------------------- yes

DYLD_LIBRARY_PATH=.:/Users/martin.trepanier/.rbenv/versions/3.4.1/lib ASAN_OPTIONS=detect_leaks=0 "clang -o conftest -I/Users/martin.trepanier/.rbenv/versions/3.4.1/include/ruby-3.4.0/arm64-darwin24 -I/Users/martin.trepanier/.rbenv/versions/3.4.1/include/ruby-3.4.0/ruby/backward -I/Users/martin.trepanier/.rbenv/versions/3.4.1/include/ruby-3.4.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fdeclspec  -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wextra-tokens -Wdeprecated-declarations -Wdivision-by-zero -Wdiv-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wold-style-definition -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wmisleading-indentation -Wundef -fno-common -pipe conftest.c -L. -L/Users/martin.trepanier/.rbenv/versions/3.4.1/lib -L. -fstack-protector-strong -L/opt/homebrew/Cellar/gmp/6.3.0/lib  -arch arm64   -lruby.3.4  -lpthread  "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5:   return !!argv[argc];
6: }
/* end */

DYLD_LIBRARY_PATH=.:/Users/martin.trepanier/.rbenv/versions/3.4.1/lib ASAN_OPTIONS=detect_leaks=0 "clang -o conftest -I/Users/martin.trepanier/.rbenv/versions/3.4.1/include/ruby-3.4.0/arm64-darwin24 -I/Users/martin.trepanier/.rbenv/versions/3.4.1/include/ruby-3.4.0/ruby/backward -I/Users/martin.trepanier/.rbenv/versions/3.4.1/include/ruby-3.4.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fdeclspec  -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wextra-tokens -Wdeprecated-declarations -Wdivision-by-zero -Wdiv-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wold-style-definition -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wmisleading-indentation -Wundef -fno-common -pipe conftest.c -L. -L/Users/martin.trepanier/.rbenv/versions/3.4.1/lib -L. -fstack-protector-strong -L/opt/homebrew/Cellar/gmp/6.3.0/lib  -arch arm64   -lruby.3.4 -lstdc++  -lpthread  "
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7:   if (argc > 1000000) {
 8:     int (* volatile tp)(void)=(int (*)(void))&t;
 9:     printf("%d", (*tp)());
10:   }
11:
12:   return !!argv[argc];
13: }
14:
15: int t(void) { ; return 0; }
/* end */

--------------------

Any idea?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions