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

MacOS15: stdlib.h:145:30: error: unknown type name 'ldiv_t'; did you mean 'dev_t' #322

Open
rgaufman opened this issue Sep 26, 2024 · 0 comments

Comments

@rgaufman
Copy link

When installing on MacOS15, I get this:

gem install mini_racer
Building native extensions. This could take a while...
ERROR:  Error installing mini_racer:
	ERROR: Failed to build gem native extension.

    current directory: /Volumes/980Pro/System/homebrew/lib/ruby/gems/3.3.0/gems/mini_racer-0.16.0/ext/mini_racer_extension
/opt/homebrew/opt/ruby/bin/ruby -I/Volumes/980Pro/System/homebrew/lib/ruby/site_ruby/3.3.0 extconf.rb
checking for -lpthread... yes
checking for -lobjc... yes
checking for whether -Wl,--exclude-libs=ALL  is accepted as LDFLAGS... no
creating Makefile

current directory: /Volumes/980Pro/System/homebrew/lib/ruby/gems/3.3.0/gems/mini_racer-0.16.0/ext/mini_racer_extension
make DESTDIR\= sitearchdir\=./.gem.20240926-21142-s1zej2 sitelibdir\=./.gem.20240926-21142-s1zej2 clean

current directory: /Volumes/980Pro/System/homebrew/lib/ruby/gems/3.3.0/gems/mini_racer-0.16.0/ext/mini_racer_extension
make DESTDIR\= sitearchdir\=./.gem.20240926-21142-s1zej2 sitelibdir\=./.gem.20240926-21142-s1zej2
compiling mini_racer_extension.cc
clang++: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
In file included from mini_racer_extension.cc:2:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby.h:38:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/ruby.h:25:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/defines.h:27:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/stdlib.h:145:30: error: unknown type name 'ldiv_t'; did you mean 'dev_t'?
  145 | inline _LIBCPP_HIDE_FROM_ABI ldiv_t div(long __x, long __y) _NOEXCEPT { return ::ldiv(__x, __y); }
      |                              ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk/usr/include/sys/_types/_dev_t.h:31:31: note: 'dev_t' declared here
   31 | typedef __darwin_dev_t        dev_t;    /* device number */
      |                               ^
In file included from mini_racer_extension.cc:2:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby.h:38:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/ruby.h:25:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/defines.h:27:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/stdlib.h:145:82: error: no member named 'ldiv' in the global namespace; did you mean 'div'?
  145 | inline _LIBCPP_HIDE_FROM_ABI ldiv_t div(long __x, long __y) _NOEXCEPT { return ::ldiv(__x, __y); }
      |                                                                                ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/stdlib.h:145:37: note: 'div' declared here
  145 | inline _LIBCPP_HIDE_FROM_ABI ldiv_t div(long __x, long __y) _NOEXCEPT { return ::ldiv(__x, __y); }
      |                                     ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/stdlib.h:147:30: error: unknown type name 'lldiv_t'
  147 | inline _LIBCPP_HIDE_FROM_ABI lldiv_t div(long long __x, long long __y) _NOEXCEPT { return ::lldiv(__x, __y); }
      |                              ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/stdlib.h:147:93: error: no member named 'lldiv' in the global namespace
  147 | inline _LIBCPP_HIDE_FROM_ABI lldiv_t div(long long __x, long long __y) _NOEXCEPT { return ::lldiv(__x, __y); }
      |                                                                                           ~~^
In file included from mini_racer_extension.cc:2:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby.h:38:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/ruby.h:25:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/defines.h:71:
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/xmalloc.h:87:22: error: use of undeclared identifier 'malloc'; did you mean 'valloc'?
   87 | RBIMPL_ATTR_NOEXCEPT(malloc(size))
      |                      ^~~~~~
      |                      valloc
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/attr/noexcept.h:73:52: note: expanded from macro 'RBIMPL_ATTR_NOEXCEPT'
   73 | # define RBIMPL_ATTR_NOEXCEPT(_) noexcept(noexcept(_))
      |                                                    ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk/usr/include/unistd.h:733:7: note: 'valloc' declared here
  733 | void    *valloc(size_t);
      |          ^
In file included from mini_racer_extension.cc:2:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby.h:38:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/ruby.h:25:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/defines.h:71:
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/xmalloc.h:118:22: error: use of undeclared identifier 'malloc'; did you mean 'valloc'?
  118 | RBIMPL_ATTR_NOEXCEPT(malloc(nelems * elemsiz))
      |                      ^~~~~~
      |                      valloc
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/attr/noexcept.h:73:52: note: expanded from macro 'RBIMPL_ATTR_NOEXCEPT'
   73 | # define RBIMPL_ATTR_NOEXCEPT(_) noexcept(noexcept(_))
      |                                                    ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk/usr/include/unistd.h:733:7: note: 'valloc' declared here
  733 | void    *valloc(size_t);
      |          ^
In file included from mini_racer_extension.cc:2:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby.h:38:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/ruby.h:25:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/defines.h:71:
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/xmalloc.h:148:22: error: use of undeclared identifier 'calloc'
  148 | RBIMPL_ATTR_NOEXCEPT(calloc(nelems, elemsiz))
      |                      ^
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/xmalloc.h:194:22: error: use of undeclared identifier 'realloc'
  194 | RBIMPL_ATTR_NOEXCEPT(realloc(ptr, newsiz))
      |                      ^
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/xmalloc.h:251:22: error: use of undeclared identifier 'realloc'
  251 | RBIMPL_ATTR_NOEXCEPT(realloc(ptr, newelems * newsiz))
      |                      ^
/Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/internal/xmalloc.h:283:22: error: use of undeclared identifier 'free'
  283 | RBIMPL_ATTR_NOEXCEPT(free(ptr))
      |                      ^
In file included from mini_racer_extension.cc:2:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby.h:38:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/ruby.h:25:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/defines.h:79:
In file included from /Volumes/980Pro/System/homebrew/Cellar/ruby/3.3.5/include/ruby-3.3.0/ruby/missing.h:19:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/cmath:319:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:392:31: error: use of undeclared identifier 'FP_NAN'
  392 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                               ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:392:39: error: use of undeclared identifier 'FP_INFINITE'
  392 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                                       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:392:52: error: use of undeclared identifier 'FP_NORMAL'
  392 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                                                    ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:392:63: error: use of undeclared identifier 'FP_SUBNORMAL'
  392 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                                                               ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:392:77: error: use of undeclared identifier 'FP_ZERO'
  392 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                                                                             ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:397:31: error: use of undeclared identifier 'FP_NAN'
  397 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                               ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:397:39: error: use of undeclared identifier 'FP_INFINITE'
  397 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                                       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:397:52: error: use of undeclared identifier 'FP_NORMAL'
  397 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                                                    ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/c++/v1/math.h:397:63: error: use of undeclared identifier 'FP_SUBNORMAL'
  397 |   return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, __x);
      |                                                               ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [mini_racer_extension.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Volumes/980Pro/System/homebrew/lib/ruby/gems/3.3.0/gems/mini_racer-0.16.0 for inspection.
Results logged to /Volumes/980Pro/System/homebrew/lib/ruby/gems/3.3.0/extensions/arm64-darwin-24/3.3.0/mini_racer-0.16.0/gem_make.out

As a temporary solution, I installed like this:

CPATH="/Library/Developer/CommandLineTools/SDKs/MacOSX14.0.sdk/usr/include/c++/v1" gem install mini_racer

Support for MacOS 15 would be appreciated :)

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

No branches or pull requests

2 participants