oneclick / rubyinstaller2

MSYS2 based RubyInstaller for Windows
https://rubyinstaller.org
BSD 3-Clause "New" or "Revised" License
644 stars 248 forks source link

Gem installation fails under Ruby3.2 #347

Closed stell closed 6 months ago

stell commented 11 months ago

What problems are you experiencing?

Trying to install mailcatcher gem under rubyinstaller-devkit-3.2.2-1-x64.exe. The instruction to install it under ruby3.2 can be seen here: https://github.com/sj26/mailcatcher/issues/539#issuecomment-1562346020

Steps to reproduce

So when doing this: gem install mailcatcher --version=0.9.0.beta2

I get the following:

current directory: C:/Users/username/.gem/ruby/3.2.0/gems/eventmachine-1.0.9.1/ext/fastfilereader
C:/Ruby32-x64/bin/ruby.exe extconf.rb
creating Makefile

current directory: C:/Users/username/.gem/ruby/3.2.0/gems/eventmachine-1.0.9.1/ext/fastfilereader
make DESTDIR\= sitearchdir\=./.gem.20230711-51424-e1hrip sitelibdir\=./.gem.20230711-51424-e1hrip clean

current directory: C:/Users/username/.gem/ruby/3.2.0/gems/eventmachine-1.0.9.1/ext/fastfilereader
make DESTDIR\= sitearchdir\=./.gem.20230711-51424-e1hrip sitelibdir\=./.gem.20230711-51424-e1hrip
generating fastfilereaderext-x64-mingw-ucrt.def
compiling mapper.cpp
compiling rubymain.cpp
In file included from C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:8,
                 from C:/Ruby32-x64/msys64/ucrt64/include/winscard.h:10,
                 from C:/Ruby32-x64/msys64/ucrt64/include/windows.h:97,
                 from C:/Ruby32-x64/msys64/ucrt64/include/winsock2.h:23,
                 from C:/Ruby32-x64/include/ruby-3.2.0/ruby/win32.h:36,
                 from C:/Ruby32-x64/include/ruby-3.2.0/ruby/internal/dosish.h:38,
                 from C:/Ruby32-x64/include/ruby-3.2.0/ruby/defines.h:78,
                 from C:/Ruby32-x64/include/ruby-3.2.0/ruby/ruby.h:25,
                 from C:/Ruby32-x64/include/ruby-3.2.0/ruby.h:38,
                 from rubymain.cpp:26:
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:64:11: error: reference to 'byte' is ambiguous
   64 |   typedef byte cs_byte;
      |           ^~~~
In file included from C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/string:42,
                 from C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/locale_classes.h:40,
                 from C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/ios_base.h:41,
                 from C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/ios:42,
                 from C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/ostream:38,
                 from C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/iostream:39,
                 from rubymain.cpp:22:
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:397:170: error: reference to 'byte' is ambiguous
  397 |   typedef void (__RPC_API *CS_TYPE_TO_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned __LONG32 ulNetworkCodeSet,void *pLocalData,unsigned __LONG32 ulLocalDataLength,byte *pNetworkData,unsigned __LONG32 *pulNetworkDataLength,error_status_t *pStatus);
      |                                                                                                                                                                          ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:397:170: error: 'byte' has not been declared
  397 |   typedef void (__RPC_API *CS_TYPE_TO_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned __LONG32 ulNetworkCodeSet,void *pLocalData,unsigned __LONG32 ulLocalDataLength,byte *pNetworkData,unsigned __LONG32 *pulNetworkDataLength,error_status_t *pStatus);
      |                                                                                                                                                                          ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:398:119: error: reference to 'byte' is ambiguous
  398 |   typedef void (__RPC_API *CS_TYPE_FROM_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned __LONG32 ulNetworkCodeSet,byte *pNetworkData,unsigned __LONG32 ulNetworkDataLength,unsigned __LONG32 ulLocalBufferSize,void *pLocalData,unsigned __LONG32 *pulLocalDataLength,error_status_t *pStatus);
      |                                                                                                                       ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:398:119: error: 'byte' has not been declared
  398 |   typedef void (__RPC_API *CS_TYPE_FROM_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned __LONG32 ulNetworkCodeSet,byte *pNetworkData,unsigned __LONG32 ulNetworkDataLength,unsigned __LONG32 ulLocalBufferSize,void *pLocalData,unsigned __LONG32 *pulLocalDataLength,error_status_t *pStatus);
      |                                                                                                                       ^~~~
In file included from C:/Ruby32-x64/msys64/ucrt64/include/combaseapi.h:153,
                 from C:/Ruby32-x64/msys64/ucrt64/include/objbase.h:14,
                 from C:/Ruby32-x64/msys64/ucrt64/include/ole2.h:17,
                 from C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:13:
C:/Ruby32-x64/msys64/ucrt64/include/wtypesbase.h:327:5: error: reference to 'byte' is ambiguous
  327 |     byte abData[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypesbase.h:349:5: error: reference to 'byte' is ambiguous
  349 |     byte abData[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypesbase.h:364:5: error: reference to 'byte' is ambiguous
  364 |     byte *pData;
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
In file included from C:/Ruby32-x64/msys64/ucrt64/include/combaseapi.h:155:
C:/Ruby32-x64/msys64/ucrt64/include/objidlbase.h:2001:5: error: reference to 'byte' is ambiguous
 2001 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidlbase.h:2001:5: error: 'byte' has not been declared
 2001 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidlbase.h:2011:11: error: reference to 'byte' is ambiguous
 2011 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidlbase.h:2026:5: error: reference to 'byte' is ambiguous
 2026 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidlbase.h:2026:5: error: 'byte' has not been declared
 2026 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidlbase.h:2036:11: error: reference to 'byte' is ambiguous
 2036 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
In file included from C:/Ruby32-x64/msys64/ucrt64/include/unknwn.h:55,
                 from C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:767,
                 from C:/Ruby32-x64/msys64/ucrt64/include/objbase.h:66:
C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:54:5: error: reference to 'byte' is ambiguous
   54 |     byte data[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:62:5: error: reference to 'byte' is ambiguous
   62 |     byte data[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:67:5: error: reference to 'byte' is ambiguous
   67 |     byte data[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:71:5: error: reference to 'byte' is ambiguous
   71 |     byte data[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:76:5: error: reference to 'byte' is ambiguous
   76 |     byte data[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:81:5: error: reference to 'byte' is ambiguous
   81 |     byte data[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/wtypes.h:307:5: error: reference to 'byte' is ambiguous
  307 |     byte pBuffer[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:8453:9: error: reference to 'byte' is ambiguous
 8453 |         byte *pbData,
      |         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:8453:9: error: 'byte' has not been declared
 8453 |         byte *pbData,
      |         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:8961:5: error: reference to 'byte' is ambiguous
 8961 |     byte *reserved1,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:8961:5: error: 'byte' has not been declared
 8961 |     byte *reserved1,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:8985:5: error: reference to 'byte' is ambiguous
 8985 |     byte *reserved2,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:8985:5: error: 'byte' has not been declared
 8985 |     byte *reserved2,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9004:5: error: reference to 'byte' is ambiguous
 9004 |     byte *reserved1,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9004:5: error: 'byte' has not been declared
 9004 |     byte *reserved1,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9030:5: error: reference to 'byte' is ambiguous
 9030 |     byte *reserved2,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9030:5: error: 'byte' has not been declared
 9030 |     byte *reserved2,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9485:5: error: reference to 'byte' is ambiguous
 9485 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9485:5: error: 'byte' has not been declared
 9485 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9496:11: error: reference to 'byte' is ambiguous
 9496 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9513:5: error: reference to 'byte' is ambiguous
 9513 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9513:5: error: 'byte' has not been declared
 9513 |     byte *pv,
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9525:11: error: reference to 'byte' is ambiguous
 9525 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:9933:5: error: reference to 'byte' is ambiguous
 9933 |     byte data[1];
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:11398:11: error: reference to 'byte' is ambiguous
11398 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:11409:11: error: reference to 'byte' is ambiguous
11409 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:11424:11: error: reference to 'byte' is ambiguous
11424 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/objidl.h:11436:11: error: reference to 'byte' is ambiguous
11436 |     const byte *pv,
      |           ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
In file included from C:/Ruby32-x64/msys64/ucrt64/include/msxml.h:311,
                 from C:/Ruby32-x64/msys64/ucrt64/include/urlmon.h:458,
                 from C:/Ruby32-x64/msys64/ucrt64/include/objbase.h:163:
C:/Ruby32-x64/msys64/ucrt64/include/oaidl.h:587:5: error: reference to 'byte' is ambiguous
  587 |     byte *pRecord;
      |     ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/c++/12.2.0/bits/cpp_type_traits.h:406:30: note: candidates are: 'enum class std::byte'
  406 |   enum class byte : unsigned char;
      |                              ^~~~
C:/Ruby32-x64/msys64/ucrt64/include/rpcndr.h:63:25: note:                 'typedef unsigned char byte'
   63 |   typedef unsigned char byte;
      |                         ^~~~
make: *** [Makefile:240: rubymain.o] Fehler 1

make failed, exit code 2

What's the output from ridk version?

ruby:
  path: C:/Ruby32-x64
  version: 3.2.2
  platform: x64-mingw-ucrt
ruby_installer:
  package_version: 3.2.2-1
  git_commit: 83df213
msys2:
  path: C:\Ruby32-x64\msys64
cc: gcc (Rev10, Built by MSYS2 project) 12.2.0
sh: GNU bash, Version 5.2.15(1)-release (x86_64-pc-msys)
os: Microsoft Windows [Version 10.0.19045.3086]
MSP-Greg commented 11 months ago

@stell

Many of the dependencies of mailcatcher are very old. For one example, see https://github.com/eventmachine/eventmachine/pull/785, which was first available in v1.2.4. mailcatcher has eventmachine locked to v1.0.9.1.

See https://github.com/sj26/mailcatcher/pull/546, which should allow it to build on Windows, but it may have issues with OpenSSL 3.x. Not.Sure.

danilogco commented 11 months ago

Hey, @stell. Depending on what you're up to, I created this fork to focus on improvements to the containerized service. It's totally updated but it's not a gem. Prepared to up by docker/compose. Take a look: https://github.com/dcotecnologia/mailcatcher

mohits commented 6 months ago

hi @stell - would you close this issue if there is no additional help needed? If we don't hear back by 27th, I will close this!