knu / ruby-unf_ext

Unicode Normalization Form support library for CRuby
MIT License
33 stars 34 forks source link

Can't install 0.0.8.2 on Windows #67

Open johnmccrae opened 2 years ago

johnmccrae commented 2 years ago

Our build system picked up the new version of the gem today and immediately blows up on Windows with the following output:

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

current directory:
C:/opscode/chef/embedded/lib/ruby/gems/3.0.0/gems/unf_ext-0.0.8.2/ext/unf_ext
C:/opscode/chef/embedded/bin/ruby.exe -I C:/opscode/chef/embedded/lib/ruby/3.0.0
-r ./siteconf20220526-[492](https://github.com/chef/chef/runs/6603559553?check_suite_focus=true#step:5:493)4-poz92f.rb extconf.rb
checking for -lstdc++... yes
creating Makefile

current directory:
C:/opscode/chef/embedded/lib/ruby/gems/3.0.0/gems/unf_ext-0.0.8.2/ext/unf_ext
make DESTDIR\= clean

current directory:
C:/opscode/chef/embedded/lib/ruby/gems/3.0.0/gems/unf_ext-0.0.8.2/ext/unf_ext
make DESTDIR\=
generating unf_ext-x64-mingw32.def
compiling unf.cc
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:98:69:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_virtual_variable(const
char*, VALUE (*)(ID, VALUE*), int)':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:100:41:
error: invalid conversion from 'int' to 'void (*)(VALUE, ID, VALUE*) {aka void
(*)(long long unsigned int, long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:49:6:
error:   initializing argument 3 of 'void rb_define_virtual_variable(const
char*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:105:57:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_virtual_variable(const
char*, VALUE (*)(...), int)':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:108:41:
error: invalid conversion from 'int' to 'void (*)(VALUE, ID, VALUE*) {aka void
(*)(long long unsigned int, long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:49:6:
error:   initializing argument 3 of 'void rb_define_virtual_variable(const
char*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:112:48:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_virtual_variable(const
char*, int, void (*)(VALUE, ID, VALUE*))':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:114:41:
error: invalid conversion from 'int' to 'VALUE (*)(ID, VALUE*) {aka long long
unsigned int (*)(long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:49:6:
error:   initializing argument 2 of 'void rb_define_virtual_variable(const
char*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:119:48:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_virtual_variable(const
char*, int, void (*)(...))':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:122:41:
error: invalid conversion from 'int' to 'VALUE (*)(ID, VALUE*) {aka long long
unsigned int (*)(long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:49:6:
error:   initializing argument 2 of 'void rb_define_virtual_variable(const
char*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:161:78:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_hooked_variable(const
char*, VALUE*, VALUE (*)(ID, VALUE*), int)':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:163:43:
error: invalid conversion from 'int' to 'void (*)(VALUE, ID, VALUE*) {aka void
(*)(long long unsigned int, long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:50:6:
error:   initializing argument 4 of 'void rb_define_hooked_variable(const char*,
VALUE*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:168:66:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_hooked_variable(const
char*, VALUE*, VALUE (*)(...), int)':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:171:43:
error: invalid conversion from 'int' to 'void (*)(VALUE, ID, VALUE*) {aka void
(*)(long long unsigned int, long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:50:6:
error:   initializing argument 4 of 'void rb_define_hooked_variable(const char*,
VALUE*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:175:57:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_hooked_variable(const
char*, VALUE*, int, void (*)(VALUE, ID, VALUE*))':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:177:43:
error: invalid conversion from 'int' to 'VALUE (*)(ID, VALUE*) {aka long long
unsigned int (*)(long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:50:6:
error:   initializing argument 3 of 'void rb_define_hooked_variable(const char*,
VALUE*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:182:57:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'void ruby::backward::cxxanyargs::rb_define_hooked_variable(const
char*, VALUE*, int, void (*)(...))':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:185:43:
error: invalid conversion from 'int' to 'VALUE (*)(ID, VALUE*) {aka long long
unsigned int (*)(long long unsigned int, long long unsigned int*)}'
[-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:24:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/variable.h:50:6:
error:   initializing argument 3 of 'void rb_define_hooked_variable(const char*,
VALUE*, VALUE (*)(ID, VALUE*), void (*)(VALUE, ID, VALUE*))' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:212:42:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'VALUE ruby::backward::cxxanyargs::rb_iterate(VALUE (*)(VALUE), VALUE,
int, VALUE)':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:214:35:
error: invalid conversion from 'int' to 'rb_block_call_func_t {aka long long
unsigned int (*)(long long unsigned int, long long unsigned int, int, const long
long unsigned int*, long long unsigned int)}' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/intern/cont.h:25:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:15,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/iterator.h:47:7:
error:   initializing argument 3 of 'VALUE rb_iterate(VALUE (*)(VALUE), VALUE,
rb_block_call_func_t, VALUE)' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:238:58:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'VALUE ruby::backward::cxxanyargs::rb_block_call(VALUE, ID, int, const
VALUE*, int, VALUE)':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:240:44:
error: invalid conversion from 'int' to 'rb_block_call_func_t {aka long long
unsigned int (*)(long long unsigned int, long long unsigned int, int, const long
long unsigned int*, long long unsigned int)}' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/intern/cont.h:25:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:15,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/iterator.h:48:7:
error:   initializing argument 5 of 'VALUE rb_block_call(VALUE, ID, int, const
VALUE*, rb_block_call_func_t, VALUE)' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: At
global scope:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:337:30:
error: 'std::nullptr_t' has not been declared
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp: In
function 'VALUE ruby::backward::cxxanyargs::rb_catch(const char*, int, VALUE)':
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:339:30:
error: invalid conversion from 'int' to 'rb_block_call_func_t {aka long long
unsigned int (*)(long long unsigned int, long long unsigned int, int, const long
long unsigned int*, long long unsigned int)}' [-fpermissive]
In file included from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/intern/cont.h:25:0,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/backward/cxxanyargs.hpp:15,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/anyargs.h:83,
from
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/ruby.h:24,
                 from c:/opscode/chef/embedded/include/ruby-3.0.0/ruby.h:38,
                 from unf.cc:3:
c:/opscode/chef/embedded/include/ruby-3.0.0/ruby/internal/iterator.h:54:7:
error:   initializing argument 2 of 'VALUE rb_catch(const char*,
rb_block_call_func_t, VALUE)' [-fpermissive]
make: *** [unf.o] Error 1

make failed, exit code 2

Gem files will remain installed in
C:/opscode/chef/embedded/lib/ruby/gems/3.0.0/gems/unf_ext-0.0.8.2 for
inspection.
Results logged to
C:/opscode/chef/embedded/lib/ruby/gems/3.0.0/extensions/x64-mingw32/3.0.0/unf_ext-0.0.8.2/gem_make.out

  C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:93:in `run'
C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:44:in `block
in make'
  C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:36:in `each'
  C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:36:in `make'
C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/ext_conf_builder.rb:63:in
`block in build'
  C:/opscode/chef/embedded/lib/ruby/3.0.0/tempfile.rb:317:in `open'
C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/ext_conf_builder.rb:26:in
`build'
C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:159:in
`build_extension'
C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:193:in `block
in build_extensions'
  C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:190:in `each'
C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/ext/builder.rb:190:in
`build_extensions'
C:/opscode/chef/embedded/lib/ruby/3.0.0/rubygems/installer.rb:845:in
`build_extensions'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/rubygems_gem_installer.rb:71:in
`build_extensions'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/rubygems_gem_installer.rb:28:in
`install'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/source/rubygems.rb:200:in
`install'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/installer/gem_installer.rb:54:in
`install'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/installer/gem_installer.rb:16:in
`install_from_spec'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/installer/parallel_installer.rb:186:in
`do_install'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/installer/parallel_installer.rb:177:in
`block in worker_pool'
  C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/worker.rb:62:in `apply_func'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/worker.rb:57:in `block in
process_queue'
  C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/worker.rb:54:in `loop'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/worker.rb:54:in
`process_queue'
C:/opscode/chef/embedded/lib/ruby/3.0.0/bundler/worker.rb:91:in `block (2
levels) in create_threads'

An error occurred while installing unf_ext (0.0.8.2), and Bundler cannot
continue.

In Gemfile:
  kitchen-inspec was resolved to 2.5.2, which depends on
    inspec was resolved to 4.56.20, which depends on
      train was resolved to 3.9.2, which depends on
        azure_graph_rbac was resolved to 0.17.2, which depends on
          ms_rest_azure was resolved to 0.12.0, which depends on
            faraday-cookie_jar was resolved to 0.0.7, which depends on
              http-cookie was resolved to 1.0.5, which depends on
                domain_name was resolved to 0.5.20190[701](https://github.com/chef/chef/runs/6603559553?check_suite_focus=true#step:5:702), which depends on
                  unf was resolved to 0.1.4, which depends on
                    unf_ext

I can reproduce this error on my local windows machine using this:

gem install unf_ext:0.0.8.2
johnmccrae commented 2 years ago

ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x64-mingw32]

ssimontis commented 1 year ago

@johnmccrae I ran onto this on MacOS trying to build it for Chef. When I ran it using sudo it installed instantly. I would suggest you try installing it from a command prompt with elevated permissions.