重新安装了 windows 系统后,安装 ruby 2.7.8-1,然后用 gem install tk 就各种报错安装失败,记得以前很顺利就安装上,现在却不行了。有没有其它好的安装方法呢?
current directory: C:/Ruby30/lib/ruby/gems/3.0.0/gems/tk-0.5.1/ext/tk C:/Ruby30/bin/ruby.exe -I C:/Ruby30/lib/ruby/3.0.0 -r ./siteconf20250722-4332-rdgoj0.rb extconf.rb check functions.checking for ruby_native_thread_p() in ruby.h... yes checking for rb_errinfo() in ruby.h... yes checking for rb_hash_lookup() in ruby.h... yes checking for rb_proc_new() in ruby.h... yes checking for rb_sourcefile() in ruby.h... yes checking for rb_thread_alive_p() in ruby.h... no checking for rb_thread_check_trap_pending() in ruby.h... yes checking for ruby_enc_find_basename() in ruby.h... yes Use ActiveTcl libraries (if available). Search tclConfig.sh and tkConfig.sh. Valid [tclConfig.sh, tkConfig.sh] are found in [["C:/Ruby30/msys32/mingw32/lib", "C:/Ruby30/msys32/mingw32/lib"]] Use [tclConfig.sh, tkConfig.sh] == ["C:/Ruby30/msys32/mingw32/lib/tclConfig.sh", "C:/Ruby30/msys32/mingw32/lib/tkConfig.sh"] creating Makefile
Find Tcl/Tk libraries. Make tcltklib.so which is required by Ruby/Tk.
current directory: C:/Ruby30/lib/ruby/gems/3.0.0/gems/tk-0.5.1/ext/tk make DESTDIR= clean
current directory: C:/Ruby30/lib/ruby/gems/3.0.0/gems/tk-0.5.1/ext/tk
make DESTDIR=
generating tcltklib-i386-mingw32.def
compiling stubs.c
stubs.c: In function 'nativethread_consistency_check':
stubs.c:42:1: warning: old-style function definition [-Wold-style-definition]
   42 | _nativethread_consistency_check(ip)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compiling tcltklib.c
tcltklib.c: In function 'get_ip':
tcltklib.c:784:1: warning: old-style function definition [-Wold-style-definition]
  784 | get_ip(self)
      | ^~~~~~
tcltklib.c: In function 'deleted_ip':
tcltklib.c:802:1: warning: old-style function definition [-Wold-style-definition]
  802 | deleted_ip(ptr)
      | ^~~~~~~~~~
tcltklib.c: In function 'rbtk_preserve_ip':
tcltklib.c:818:1: warning: old-style function definition [-Wold-style-definition]
  818 | rbtk_preserve_ip(ptr)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'rbtk_release_ip':
tcltklib.c:832:1: warning: old-style function definition [-Wold-style-definition]
  832 | rbtk_release_ip(ptr)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'tcltkip_init_tk':
tcltklib.c:1327:1: warning: old-style function definition [-Wold-style-definition]
 1327 | tcltkip_init_tk(interp)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'pending_exception_check1':
tcltklib.c:1435:1: warning: old-style function definition [-Wold-style-definition]
 1435 | pending_exception_check1(thr_crit_bup, ptr)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'call_original_exit':
tcltklib.c:1480:1: warning: old-style function definition [-Wold-style-definition]
 1480 | call_original_exit(ptr, state)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function '_timer_for_tcl':
tcltklib.c:1631:1: warning: old-style function definition [-Wold-style-definition]
 1631 | _timer_for_tcl(clientData)
      | ^~~~~~~~~~~~~~
tcltklib.c: In function 'set_eventloop_window_mode':
tcltklib.c:1682:1: warning: old-style function definition [-Wold-style-definition]
 1682 | set_eventloop_window_mode(self, mode)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'get_eventloop_window_mode':
tcltklib.c:1697:1: warning: old-style function definition [-Wold-style-definition]
 1697 | get_eventloop_window_mode(self)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'set_eventloop_tick':
tcltklib.c:1708:1: warning: old-style function definition [-Wold-style-definition]
 1708 | set_eventloop_tick(self, tick)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'get_eventloop_tick':
tcltklib.c:1742:1: warning: old-style function definition [-Wold-style-definition]
 1742 | get_eventloop_tick(self)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_eventloop_tick':
tcltklib.c:1749:1: warning: old-style function definition [-Wold-style-definition]
 1749 | ip_set_eventloop_tick(self, tick)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_eventloop_tick':
tcltklib.c:1768:1: warning: old-style function definition [-Wold-style-definition]
 1768 | ip_get_eventloop_tick(self)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'set_no_event_wait':
tcltklib.c:1775:1: warning: old-style function definition [-Wold-style-definition]
 1775 | set_no_event_wait(self, wait)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'get_no_event_wait':
tcltklib.c:1793:1: warning: old-style function definition [-Wold-style-definition]
 1793 | get_no_event_wait(self)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_no_event_wait':
tcltklib.c:1800:1: warning: old-style function definition [-Wold-style-definition]
 1800 | ip_set_no_event_wait(self, wait)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_no_event_wait':
tcltklib.c:1819:1: warning: old-style function definition [-Wold-style-definition]
 1819 | ip_get_no_event_wait(self)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'set_eventloop_weight':
tcltklib.c:1826:1: warning: old-style function definition [-Wold-style-definition]
 1826 | set_eventloop_weight(self, loop_max, no_event)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'get_eventloop_weight':
tcltklib.c:1846:1: warning: old-style function definition [-Wold-style-definition]
 1846 | get_eventloop_weight(self)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_eventloop_weight':
tcltklib.c:1853:1: warning: old-style function definition [-Wold-style-definition]
 1853 | ip_set_eventloop_weight(self, loop_max, no_event)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_eventloop_weight':
tcltklib.c:1873:1: warning: old-style function definition [-Wold-style-definition]
 1873 | ip_get_eventloop_weight(self)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'set_max_block_time':
tcltklib.c:1880:1: warning: old-style function definition [-Wold-style-definition]
 1880 | set_max_block_time(self, time)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_evloop_thread_p':
tcltklib.c:1913:1: warning: old-style function definition [-Wold-style-definition]
 1913 | lib_evloop_thread_p(self)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_evloop_abort_on_exc':
tcltklib.c:1926:1: warning: old-style function definition [-Wold-style-definition]
 1926 | lib_evloop_abort_on_exc(self)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_evloop_abort_on_exc':
tcltklib.c:1939:1: warning: old-style function definition [-Wold-style-definition]
 1939 | ip_evloop_abort_on_exc(self)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_evloop_abort_on_exc_set':
tcltklib.c:1946:1: warning: old-style function definition [-Wold-style-definition]
 1946 | lib_evloop_abort_on_exc_set(self, val)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_evloop_abort_on_exc_set':
tcltklib.c:1960:1: warning: old-style function definition [-Wold-style-definition]
 1960 | ip_evloop_abort_on_exc_set(self, val)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_num_of_mainwindows_core':
tcltklib.c:1979:1: warning: old-style function definition [-Wold-style-definition]
 1979 | lib_num_of_mainwindows_core(self, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_num_of_mainwindows':
tcltklib.c:1992:1: warning: old-style function definition [-Wold-style-definition]
 1992 | lib_num_of_mainwindows(self)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'call_DoOneEvent':
tcltklib.c:2045:21: error: passing argument 1 of 'tk_funcall' from incompatible pointer type [-Wincompatible-pointer-types]
 2045 |   return tk_funcall(call_DoOneEvent_core, 0, (VALUE*)NULL, flag_val);
      |                     ^~~~~~~~~~~~~~~~~~~~
      |                     |
      |                     VALUE ()(VALUE) {aka long unsigned int ()(long unsigned int)}
In file included from C:/Ruby30/include/ruby-3.0.0/ruby/defines.h:78,
                 from C:/Ruby30/include/ruby-3.0.0/ruby/ruby.h:23,
                 from C:/Ruby30/include/ruby-3.0.0/ruby.h:38,
                 from tcltklib.c:10:
tcltklib.c:258:28: note: expected 'VALUE ()(void)' {aka 'long unsigned int ()(void)'} but argument is of type 'VALUE ()(VALUE)' {aka 'long unsigned int ()(long unsigned int)'}
  258 | static VALUE tk_funcall _((VALUE(), int, VALUE*, VALUE));
      |                            ^~~~~~~
C:/Ruby30/include/ruby-3.0.0/ruby/backward/2/stdarg.h:29:18: note: in definition of macro ''
   29 | # define _(args) args
      |                  ^~~~
tcltklib.c:2021:1: note: 'call_DoOneEvent_core' declared here
 2021 | call_DoOneEvent_core(VALUE flag_val)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_eventloop_core':
tcltklib.c:2197:1: warning: old-style function definition [-Wold-style-definition]
 2197 | lib_eventloop_core(check_root, update_flag, check_var, interp)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_eventloop_main_core':
tcltklib.c:2573:1: warning: old-style function definition [-Wold-style-definition]
 2573 | lib_eventloop_main_core(args)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_eventloop_main':
tcltklib.c:2593:1: warning: old-style function definition [-Wold-style-definition]
 2593 | lib_eventloop_main(args)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_eventloop_ensure':
tcltklib.c:2628:1: warning: old-style function definition [-Wold-style-definition]
 2628 | lib_eventloop_ensure(args)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_eventloop_launcher':
tcltklib.c:2690:1: warning: old-style function definition [-Wold-style-definition]
 2690 | lib_eventloop_launcher(check_root, update_flag, check_var, interp)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_mainloop':
tcltklib.c:2744:1: warning: old-style function definition [-Wold-style-definition]
 2744 | lib_mainloop(argc, argv, self)
      | ^~~~~~~~~~~~
tcltklib.c: In function 'ip_mainloop':
tcltklib.c:2764:1: warning: old-style function definition [-Wold-style-definition]
 2764 | ip_mainloop(argc, argv, self)
      | ^~~~~~~~~~~
tcltklib.c: In function 'watchdog_evloop_launcher':
tcltklib.c:2790:1: warning: old-style function definition [-Wold-style-definition]
 2790 | watchdog_evloop_launcher(check_rootwidget)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_watchdog_core':
tcltklib.c:2800:1: warning: old-style function definition [-Wold-style-definition]
 2800 | lib_watchdog_core(check_rootwidget)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_watchdog_ensure':
tcltklib.c:2857:1: warning: old-style function definition [-Wold-style-definition]
 2857 | lib_watchdog_ensure(arg)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_mainloop_watchdog':
tcltklib.c:2868:1: warning: old-style function definition [-Wold-style-definition]
 2868 | lib_mainloop_watchdog(argc, argv, self)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_mainloop_watchdog':
tcltklib.c:2893:1: warning: old-style function definition [-Wold-style-definition]
 2893 | ip_mainloop_watchdog(argc, argv, self)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function '_thread_call_proc_core':
tcltklib.c:2926:1: warning: old-style function definition [-Wold-style-definition]
 2926 | _thread_call_proc_core(arg)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function '_thread_call_proc_ensure':
tcltklib.c:2934:1: warning: old-style function definition [-Wold-style-definition]
 2934 | _thread_call_proc_ensure(arg)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function '_thread_call_proc':
tcltklib.c:2943:1: warning: old-style function definition [-Wold-style-definition]
 2943 | _thread_call_proc(arg)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_thread_callback':
tcltklib.c:2964:1: warning: old-style function definition [-Wold-style-definition]
 2964 | lib_thread_callback(argc, argv, self)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_do_one_event_core':
tcltklib.c:3023:1: warning: old-style function definition [-Wold-style-definition]
 3023 | lib_do_one_event_core(argc, argv, self, is_ip)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_do_one_event':
tcltklib.c:3076:1: warning: old-style function definition [-Wold-style-definition]
 3076 | lib_do_one_event(argc, argv, self)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_do_one_event':
tcltklib.c:3085:1: warning: old-style function definition [-Wold-style-definition]
 3085 | ip_do_one_event(argc, argv, self)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_exc_message':
tcltklib.c:3095:1: warning: old-style function definition [-Wold-style-definition]
 3095 | ip_set_exc_message(interp, exc)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'TkStringValue':
tcltklib.c:3158:1: warning: old-style function definition [-Wold-style-definition]
 3158 | TkStringValue(obj)
      | ^~~~~~~~~~~~~
tcltklib.c: In function 'tcl_protect':
tcltklib.c:3366:1: warning: old-style function definition [-Wold-style-definition]
 3366 | tcl_protect(interp, proc, data)
      | ^~~~~~~~~~~
tcltklib.c:3382:37: error: passing argument 2 of 'tcl_protect_core' from incompatible pointer type [-Wincompatible-pointer-types]
 3382 |     code = tcl_protect_core(interp, proc, data);
      |                                     ^~~~
      |                                     |
      |                                     VALUE ()(void) {aka long unsigned int ()(void)}
tcltklib.c:3188:46: note: expected 'VALUE ()(VALUE)' {aka 'long unsigned int ()(long unsigned int)'} but argument is of type 'VALUE ()(void)' {aka 'long unsigned int ()(void)'}
 3188 | tcl_protect_core(Tcl_Interp interp, VALUE (*proc)(VALUE), VALUE data)
      |                                      ~~~~~~^~~~~~~~~~
tcltklib.c: In function 'ip_ruby_eval':
tcltklib.c:3397:1: warning: old-style function definition [-Wold-style-definition]
 3397 | ip_ruby_eval(clientData, interp, argc, argv)
      | ^~~~~~~~~~~~
tcltklib.c: In function 'ip_ruby_cmd_core':
tcltklib.c:3475:1: warning: old-style function definition [-Wold-style-definition]
 3475 | ip_ruby_cmd_core(arg)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_ruby_cmd_receiver_const_get':
tcltklib.c:3493:1: warning: old-style function definition [-Wold-style-definition]
 3493 | ip_ruby_cmd_receiver_const_get(name)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_ruby_cmd_receiver_get':
tcltklib.c:3500:1: warning: old-style function definition [-Wold-style-definition]
 3500 | ip_ruby_cmd_receiver_get(str)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_ruby_cmd':
tcltklib.c:3535:1: warning: old-style function definition [-Wold-style-definition]
 3535 | ip_ruby_cmd(clientData, interp, argc, argv)
      | ^~~~~~~~~~~
tcltklib.c: In function 'ip_rbUpdateObjCmd':
tcltklib.c:3820:1: warning: old-style function definition [-Wold-style-definition]
 3820 | ip_rbUpdateObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'rb_threadUpdateProc':
tcltklib.c:3952:1: warning: old-style function definition [-Wold-style-definition]
 3952 | rb_threadUpdateProc(clientData)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_rb_threadUpdateObjCmd':
tcltklib.c:3968:1: warning: old-style function definition [-Wold-style-definition]
 3968 | ip_rb_threadUpdateObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'VwaitVarProc':
tcltklib.c:4139:1: warning: old-style function definition [-Wold-style-definition]
 4139 | VwaitVarProc(clientData, interp, name1, name2, flags)
      | ^~~~~~~~~~~~
tcltklib.c: In function 'ip_rbVwaitObjCmd':
tcltklib.c:4164:1: warning: old-style function definition [-Wold-style-definition]
 4164 | ip_rbVwaitObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'WaitVariableProc':
tcltklib.c:4349:1: warning: old-style function definition [-Wold-style-definition]
 4349 | WaitVariableProc(clientData, interp, name1, name2, flags)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'WaitVisibilityProc':
tcltklib.c:4375:1: warning: old-style function definition [-Wold-style-definition]
 4375 | WaitVisibilityProc(clientData, eventPtr)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'WaitWindowProc':
tcltklib.c:4391:1: warning: old-style function definition [-Wold-style-definition]
 4391 | WaitWindowProc(clientData, eventPtr)
      | ^~~~~~~~~~~~~~
tcltklib.c: In function 'ip_rbTkWaitObjCmd':
tcltklib.c:4404:1: warning: old-style function definition [-Wold-style-definition]
 4404 | ip_rbTkWaitObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'rb_threadVwaitProc':
tcltklib.c:4782:1: warning: old-style function definition [-Wold-style-definition]
 4782 | rb_threadVwaitProc(clientData, interp, name1, name2, flags)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'rb_threadWaitVisibilityProc':
tcltklib.c:4817:1: warning: old-style function definition [-Wold-style-definition]
 4817 | rb_threadWaitVisibilityProc(clientData, eventPtr)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'rb_threadWaitWindowProc':
tcltklib.c:4834:1: warning: old-style function definition [-Wold-style-definition]
 4834 | rb_threadWaitWindowProc(clientData, eventPtr)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_rb_threadVwaitObjCmd':
tcltklib.c:4848:1: warning: old-style function definition [-Wold-style-definition]
 4848 | ip_rb_threadVwaitObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_rb_threadTkWaitObjCmd':
tcltklib.c:5005:1: warning: old-style function definition [-Wold-style-definition]
 5005 | ip_rb_threadTkWaitObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_thread_vwait':
tcltklib.c:5445:1: warning: old-style function definition [-Wold-style-definition]
 5445 | ip_thread_vwait(self, var)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_thread_tkwait':
tcltklib.c:5459:1: warning: old-style function definition [-Wold-style-definition]
 5459 | ip_thread_tkwait(self, mode, target)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'delete_slaves':
tcltklib.c:5478:1: warning: old-style function definition [-Wold-style-definition]
 5478 | delete_slaves(ip)
      | ^~~~~~~~~~~~~
tcltklib.c: In function 'ip_finalize':
tcltklib.c:5613:1: warning: old-style function definition [-Wold-style-definition]
 5613 | ip_finalize(ip)
      | ^~~~~~~~~~~
tcltklib.c: In function 'ip_free':
tcltklib.c:5755:1: warning: old-style function definition [-Wold-style-definition]
 5755 | ip_free(p)
      | ^~~~~~~
tcltklib.c: In function 'ip_alloc':
tcltklib.c:5809:1: warning: old-style function definition [-Wold-style-definition]
 5809 | ip_alloc(self)
      | ^~~~~~~~
tcltklib.c: In function 'ip_replace_wait_commands':
tcltklib.c:5816:1: warning: old-style function definition [-Wold-style-definition]
 5816 | ip_replace_wait_commands(interp, mainWin)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_rb_replaceSlaveTkCmdsObjCmd':
tcltklib.c:5890:1: warning: old-style function definition [-Wold-style-definition]
 5890 | ip_rb_replaceSlaveTkCmdsObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_rbNamespaceObjCmd':
tcltklib.c:5962:1: warning: old-style function definition [-Wold-style-definition]
 5962 | ip_rbNamespaceObjCmd(clientData, interp, objc, objv)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_wrap_namespace_command':
tcltklib.c:6052:1: warning: old-style function definition [-Wold-style-definition]
 6052 | ip_wrap_namespace_command(interp)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_init':
tcltklib.c:6112:1: warning: old-style function definition [-Wold-style-definition]
 6112 | ip_init(argc, argv, self)
      | ^~~~~~~
tcltklib.c: In function 'ip_create_slave_core':
tcltklib.c:6368:1: warning: old-style function definition [-Wold-style-definition]
 6368 | ip_create_slave_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_create_slave':
tcltklib.c:6482:1: warning: old-style function definition [-Wold-style-definition]
 6482 | ip_create_slave(argc, argv, self)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_is_slave_of_p':
tcltklib.c:6516:1: warning: old-style function definition [-Wold-style-definition]
 6516 | ip_is_slave_of_p(self, master)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_create_console_core':
tcltklib.c:6550:1: warning: old-style function definition [-Wold-style-definition]
 6550 | ip_create_console_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_create_console':
tcltklib.c:6598:1: warning: old-style function definition [-Wold-style-definition]
 6598 | ip_create_console(self)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_make_safe_core':
tcltklib.c:6613:1: warning: old-style function definition [-Wold-style-definition]
 6613 | ip_make_safe_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_make_safe':
tcltklib.c:6651:1: warning: old-style function definition [-Wold-style-definition]
 6651 | ip_make_safe(self)
      | ^~~~~~~~~~~~
tcltklib.c: In function 'ip_is_safe_p':
tcltklib.c:6666:1: warning: old-style function definition [-Wold-style-definition]
 6666 | ip_is_safe_p(self)
      | ^~~~~~~~~~~~
tcltklib.c: In function 'ip_allow_ruby_exit_p':
tcltklib.c:6685:1: warning: old-style function definition [-Wold-style-definition]
 6685 | ip_allow_ruby_exit_p(self)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_allow_ruby_exit_set':
tcltklib.c:6704:1: warning: old-style function definition [-Wold-style-definition]
 6704 | ip_allow_ruby_exit_set(self, val)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_delete':
tcltklib.c:6759:1: warning: old-style function definition [-Wold-style-definition]
 6759 | ip_delete(self)
      | ^~~~~~~~~
tcltklib.c: In function 'ip_has_invalid_namespace_p':
tcltklib.c:6791:1: warning: old-style function definition [-Wold-style-definition]
 6791 | ip_has_invalid_namespace_p(self)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_is_deleted_p':
tcltklib.c:6813:1: warning: old-style function definition [-Wold-style-definition]
 6813 | ip_is_deleted_p(self)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_has_mainwindow_p_core':
tcltklib.c:6826:1: warning: old-style function definition [-Wold-style-definition]
 6826 | ip_has_mainwindow_p_core(self, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_has_mainwindow_p':
tcltklib.c:6843:1: warning: old-style function definition [-Wold-style-definition]
 6843 | ip_has_mainwindow_p(self)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'get_str_from_obj':
tcltklib.c:6853:1: warning: old-style function definition [-Wold-style-definition]
 6853 | get_str_from_obj(obj)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'get_obj_from_str':
tcltklib.c:6901:1: warning: old-style function definition [-Wold-style-definition]
 6901 | get_obj_from_str(str)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_result_string_obj':
tcltklib.c:6937:1: warning: old-style function definition [-Wold-style-definition]
 6937 | ip_get_result_string_obj(interp)
      | ^~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'call_queue_handler':
tcltklib.c:6958:1: warning: old-style function definition [-Wold-style-definition]
 6958 | call_queue_handler(evPtr, flags)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c:7000:13: error: too many arguments to function 'q->func'; expected 0, have 3
 7000 |     ret = (q->func)(q->interp, q->argc, q->argv);
      |           ^~~~~ ~~~~~~~~~
tcltklib.c:439:13: note: declared here
  439 |     VALUE (*func)();
      |             ^~~~
tcltklib.c: In function 'tk_funcall':
tcltklib.c:7042:1: warning: old-style function definition [-Wold-style-definition]
 7042 | tk_funcall(func, argc, argv, obj)
      | ^~~~~~~~~~
tcltklib.c:7088:18: error: too many arguments to function 'func'; expected 0, have 3
 7088 |         result = (func)(ip_obj, argc, argv);
      |                  ^      ~~~~~~
tcltklib.c: In function 'ip_eval_real':
tcltklib.c:7259:1: warning: old-style function definition [-Wold-style-definition]
 7259 | ip_eval_real(self, cmd_str, cmd_len)
      | ^~~~~~~~~~~~
tcltklib.c: In function 'eval_queue_handler':
tcltklib.c:7421:1: warning: old-style function definition [-Wold-style-definition]
 7421 | eval_queue_handler(evPtr, flags)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_eval':
tcltklib.c:7502:1: warning: old-style function definition [-Wold-style-definition]
 7502 | ip_eval(self, str)
      | ^~~~~~~
tcltklib.c: In function 'ip_cancel_eval_core':
tcltklib.c:7680:1: warning: old-style function definition [-Wold-style-definition]
 7680 | ip_cancel_eval_core(interp, msg, flag)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_cancel_eval':
tcltklib.c:7706:1: warning: old-style function definition [-Wold-style-definition]
 7706 | ip_cancel_eval(argc, argv, self)
      | ^~~~~~~~~~~~~~
tcltklib.c: In function 'ip_cancel_eval_unwind':
tcltklib.c:7727:1: warning: old-style function definition [-Wold-style-definition]
 7727 | ip_cancel_eval_unwind(argc, argv, self)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_restart_core':
tcltklib.c:7749:1: warning: old-style function definition [-Wold-style-definition]
 7749 | lib_restart_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_restart':
tcltklib.c:7810:1: warning: old-style function definition [-Wold-style-definition]
 7810 | lib_restart(self)
      | ^~~~~~~~~~~
tcltklib.c: In function 'ip_restart':
tcltklib.c:7828:1: warning: old-style function definition [-Wold-style-definition]
 7828 | ip_restart(self)
      | ^~~~~~~~~~
tcltklib.c: In function 'lib_toUTF8_core':
tcltklib.c:7849:1: warning: old-style function definition [-Wold-style-definition]
 7849 | lib_toUTF8_core(ip_obj, src, encodename)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_toUTF8':
tcltklib.c:8007:1: warning: old-style function definition [-Wold-style-definition]
 8007 | lib_toUTF8(argc, argv, self)
      | ^~~~~~~~~~
tcltklib.c: In function 'ip_toUTF8':
tcltklib.c:8021:1: warning: old-style function definition [-Wold-style-definition]
 8021 | ip_toUTF8(argc, argv, self)
      | ^~~~~~~~~
tcltklib.c: In function 'lib_fromUTF8_core':
tcltklib.c:8035:1: warning: old-style function definition [-Wold-style-definition]
 8035 | lib_fromUTF8_core(ip_obj, src, encodename)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_fromUTF8':
tcltklib.c:8207:1: warning: old-style function definition [-Wold-style-definition]
 8207 | lib_fromUTF8(argc, argv, self)
      | ^~~~~~~~~~~~
tcltklib.c: In function 'ip_fromUTF8':
tcltklib.c:8221:1: warning: old-style function definition [-Wold-style-definition]
 8221 | ip_fromUTF8(argc, argv, self)
      | ^~~~~~~~~~~
tcltklib.c: In function 'lib_UTF_backslash_core':
tcltklib.c:8235:1: warning: old-style function definition [-Wold-style-definition]
 8235 | lib_UTF_backslash_core(self, str, all_bs)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_UTF_backslash':
tcltklib.c:8313:1: warning: old-style function definition [-Wold-style-definition]
 8313 | lib_UTF_backslash(self, str)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_Tcl_backslash':
tcltklib.c:8321:1: warning: old-style function definition [-Wold-style-definition]
 8321 | lib_Tcl_backslash(self, str)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_get_system_encoding':
tcltklib.c:8329:1: warning: old-style function definition [-Wold-style-definition]
 8329 | lib_get_system_encoding(self)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_set_system_encoding':
tcltklib.c:8341:1: warning: old-style function definition [-Wold-style-definition]
 8341 | lib_set_system_encoding(self, enc_name)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_invoke_core':
tcltklib.c:8473:1: warning: old-style function definition [-Wold-style-definition]
 8473 | ip_invoke_core(interp, objc, objv)
      | ^~~~~~~~~~~~~~
tcltklib.c: In function 'alloc_invoke_arguments':
tcltklib.c:8759:1: warning: old-style function definition [-Wold-style-definition]
 8759 | alloc_invoke_arguments(argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'free_invoke_arguments':
tcltklib.c:8807:1: warning: old-style function definition [-Wold-style-definition]
 8807 | free_invoke_arguments(argc, av)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_invoke_real':
tcltklib.c:8851:1: warning: old-style function definition [-Wold-style-definition]
 8851 | ip_invoke_real(argc, argv, interp)
      | ^~~~~~~~~~~~~~
tcltklib.c: In function 'invoke_queue_handler':
tcltklib.c:8890:1: warning: old-style function definition [-Wold-style-definition]
 8890 | invoke_queue_handler(evPtr, flags)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_invoke_with_position':
tcltklib.c:8973:1: warning: old-style function definition [-Wold-style-definition]
 8973 | ip_invoke_with_position(argc, argv, obj, position)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_retval':
tcltklib.c:9149:1: warning: old-style function definition [-Wold-style-definition]
 9149 | ip_retval(self)
      | ^~~~~~~~~
tcltklib.c: In function 'ip_invoke':
tcltklib.c:9166:1: warning: old-style function definition [-Wold-style-definition]
 9166 | ip_invoke(argc, argv, obj)
      | ^~~~~~~~~
tcltklib.c: In function 'ip_invoke_immediate':
tcltklib.c:9175:1: warning: old-style function definition [-Wold-style-definition]
 9175 | ip_invoke_immediate(argc, argv, obj)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_variable2_core':
tcltklib.c:9187:1: warning: old-style function definition [-Wold-style-definition]
 9187 | ip_get_variable2_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_variable2':
tcltklib.c:9283:1: warning: old-style function definition [-Wold-style-definition]
 9283 | ip_get_variable2(self, varname, index, flag)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_variable':
tcltklib.c:9309:1: warning: old-style function definition [-Wold-style-definition]
 9309 | ip_get_variable(self, varname, flag)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_variable2_core':
tcltklib.c:9318:1: warning: old-style function definition [-Wold-style-definition]
 9318 | ip_set_variable2_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_variable2':
tcltklib.c:9419:1: warning: old-style function definition [-Wold-style-definition]
 9419 | ip_set_variable2(self, varname, index, value, flag)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_variable':
tcltklib.c:9448:1: warning: old-style function definition [-Wold-style-definition]
 9448 | ip_set_variable(self, varname, value, flag)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_unset_variable2_core':
tcltklib.c:9458:1: warning: old-style function definition [-Wold-style-definition]
 9458 | ip_unset_variable2_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_unset_variable2':
tcltklib.c:9497:1: warning: old-style function definition [-Wold-style-definition]
 9497 | ip_unset_variable2(self, varname, index, flag)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_unset_variable':
tcltklib.c:9523:1: warning: old-style function definition [-Wold-style-definition]
 9523 | ip_unset_variable(self, varname, flag)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_global_var':
tcltklib.c:9532:1: warning: old-style function definition [-Wold-style-definition]
 9532 | ip_get_global_var(self, varname)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_global_var2':
tcltklib.c:9541:1: warning: old-style function definition [-Wold-style-definition]
 9541 | ip_get_global_var2(self, varname, index)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_global_var':
tcltklib.c:9551:1: warning: old-style function definition [-Wold-style-definition]
 9551 | ip_set_global_var(self, varname, value)
      | ^~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_set_global_var2':
tcltklib.c:9561:1: warning: old-style function definition [-Wold-style-definition]
 9561 | ip_set_global_var2(self, varname, index, value)
      | ^~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_unset_global_var':
tcltklib.c:9572:1: warning: old-style function definition [-Wold-style-definition]
 9572 | ip_unset_global_var(self, varname)
      | ^~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_unset_global_var2':
tcltklib.c:9581:1: warning: old-style function definition [-Wold-style-definition]
 9581 | ip_unset_global_var2(self, varname, index)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_split_tklist_core':
tcltklib.c:9593:1: warning: old-style function definition [-Wold-style-definition]
 9593 | lib_split_tklist_core(ip_obj, list_str)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_split_tklist':
tcltklib.c:9719:1: warning: old-style function definition [-Wold-style-definition]
 9719 | lib_split_tklist(self, list_str)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_split_tklist':
tcltklib.c:9728:1: warning: old-style function definition [-Wold-style-definition]
 9728 | ip_split_tklist(self, list_str)
      | ^~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_merge_tklist':
tcltklib.c:9736:1: warning: old-style function definition [-Wold-style-definition]
 9736 | lib_merge_tklist(argc, argv, obj)
      | ^~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_conv_listelement':
tcltklib.c:9831:1: warning: old-style function definition [-Wold-style-definition]
 9831 | lib_conv_listelement(self, src)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'lib_getversion':
tcltklib.c:9866:1: warning: old-style function definition [-Wold-style-definition]
 9866 | lib_getversion(self)
      | ^~~~~~~~~~~~~~
tcltklib.c: In function 'lib_get_reltype_name':
tcltklib.c:9878:1: warning: old-style function definition [-Wold-style-definition]
 9878 | lib_get_reltype_name(self)
      | ^~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'create_dummy_encoding_for_tk_core':
tcltklib.c:9955:1: warning: old-style function definition [-Wold-style-definition]
 9955 | create_dummy_encoding_for_tk_core(interp, name, error_mode)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'create_dummy_encoding_for_tk':
tcltklib.c:9995:1: warning: old-style function definition [-Wold-style-definition]
 9995 | create_dummy_encoding_for_tk(interp, name)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'update_encoding_table':
tcltklib.c:10005:1: warning: old-style function definition [-Wold-style-definition]
10005 | update_encoding_table(table, interp, error_mode)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'encoding_table_get_name_core':
tcltklib.c:10062:1: warning: old-style function definition [-Wold-style-definition]
10062 | encoding_table_get_name_core(table, enc_arg, error_mode)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'encoding_table_get_obj_core':
tcltklib.c:10169:1: warning: old-style function definition [-Wold-style-definition]
10169 | encoding_table_get_obj_core(table, enc, error_mode)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'encoding_table_get_name':
tcltklib.c:10296:1: warning: old-style function definition [-Wold-style-definition]
10296 | encoding_table_get_name(table, enc)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'encoding_table_get_obj':
tcltklib.c:10303:1: warning: old-style function definition [-Wold-style-definition]
10303 | encoding_table_get_obj(table, enc)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'create_encoding_table_core':
tcltklib.c:10312:1: warning: old-style function definition [-Wold-style-definition]
10312 | create_encoding_table_core(arg, interp)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'create_encoding_table':
tcltklib.c:10455:1: warning: old-style function definition [-Wold-style-definition]
10455 | create_encoding_table(interp)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_get_encoding_table':
tcltklib.c:10463:1: warning: old-style function definition [-Wold-style-definition]
10463 | ip_get_encoding_table(interp)
      | ^~~~~~~~~~~~~~~~~~~~~
tcltklib.c:10473:51: error: passing argument 3 of 'rb_define_singleton_method' from incompatible pointer type [-Wincompatible-pointer-types]
10473 |     rb_define_singleton_method(table, "get_name", encoding_table_get_name, 1);
      |                                                   ^~~~~~~~~~~~~~~~~~~~~~~
      |                                                   |
      |                                                   VALUE ()(VALUE,  VALUE) {aka long unsigned int ()(long unsigned int,  long unsigned int)}
In file included from C:/Ruby30/include/ruby-3.0.0/ruby/internal/anyargs.h:76,
                 from C:/Ruby30/include/ruby-3.0.0/ruby/ruby.h:24:
C:/Ruby30/include/ruby-3.0.0/ruby/internal/intern/class.h:52:53: note: expected 'VALUE ()(void)' {aka 'long unsigned int ()(void)'} but argument is of type 'VALUE ()(VALUE,  VALUE)' {aka 'long unsigned int ()(long unsigned int,  long unsigned int)'}
   52 | void rb_define_singleton_method(VALUE, const char, VALUE()(ANYARGS), int);
      |                                                     ^~~~~~~~~~~~~~~~~
tcltklib.c:10296:1: note: 'encoding_table_get_name' declared here
10296 | encoding_table_get_name(table, enc)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c:10474:51: error: passing argument 3 of 'rb_define_singleton_method' from incompatible pointer type [-Wincompatible-pointer-types]
10474 |     rb_define_singleton_method(table, "get_obj",  encoding_table_get_obj,  1);
      |                                                   ^~~~~~~~~~~~~~~~~~~~~~
      |                                                   |
      |                                                   VALUE ()(VALUE,  VALUE) {aka long unsigned int ()(long unsigned int,  long unsigned int)}
C:/Ruby30/include/ruby-3.0.0/ruby/internal/intern/class.h:52:53: note: expected 'VALUE ()(void)' {aka 'long unsigned int ()(void)'} but argument is of type 'VALUE ()(VALUE,  VALUE)' {aka 'long unsigned int ()(long unsigned int,  long unsigned int)'}
   52 | void rb_define_singleton_method(VALUE, const char, VALUE()(ANYARGS), int);
      |                                                     ^~~~~~~~~~~~~~~~~
tcltklib.c:10303:1: note: 'encoding_table_get_obj' declared here
10303 | encoding_table_get_obj(table, enc)
      | ^~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_make_menu_embeddable_core':
tcltklib.c:10528:1: warning: old-style function definition [-Wold-style-definition]
10528 | ip_make_menu_embeddable_core(interp, argc, argv)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'ip_make_menu_embeddable':
tcltklib.c:10608:1: warning: old-style function definition [-Wold-style-definition]
10608 | ip_make_menu_embeddable(interp, menu_path)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c: In function 'Init_tcltklib':
tcltklib.c:10849:37: error: passing argument 3 of 'rb_define_method' from incompatible pointer type [-Wincompatible-pointer-types]
10849 |     rb_define_method(ip, "_invoke", ip_invoke, -1);
      |                                     ^~~~~~~~~
      |                                     |
      |                                     VALUE ()(int,  VALUE , VALUE) {aka long unsigned int ()(int,  long unsigned int , long unsigned int)}
In file included from C:/Ruby30/include/ruby-3.0.0/ruby/internal/anyargs.h:78:
C:/Ruby30/include/ruby-3.0.0/ruby/internal/method.h:29:41: note: expected 'VALUE ()(void)' {aka 'long unsigned int ()(void)'} but argument is of type 'VALUE ()(int,  VALUE , VALUE)' {aka 'long unsigned int ()(int,  long unsigned int , long unsigned int)'}
   29 | void rb_define_method(VALUE,const char,VALUE()(ANYARGS),int);
      |                                         ^~~~~~~~~~~~~~~~~
tcltklib.c:9166:1: note: 'ip_invoke' declared here
 9166 | ip_invoke(argc, argv, obj)
      | ^~~~~~~~~
tcltklib.c:10858:22: error: passing argument 3 of 'rb_define_method' from incompatible pointer type [-Wincompatible-pointer-types]
10858 |                      create_dummy_encoding_for_tk, 1);
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                      |
      |                      VALUE ()(VALUE,  VALUE) {aka long unsigned int ()(long unsigned int,  long unsigned int)}
C:/Ruby30/include/ruby-3.0.0/ruby/internal/method.h:29:41: note: expected 'VALUE ()(void)' {aka 'long unsigned int ()(void)'} but argument is of type 'VALUE ()(VALUE,  VALUE)' {aka 'long unsigned int ()(long unsigned int,  long unsigned int)'}
   29 | void rb_define_method(VALUE,const char,VALUE()(ANYARGS),int);
      |                                         ^~~~~~~~~~~~~~~~~
tcltklib.c:9995:1: note: 'create_dummy_encoding_for_tk' declared here
 9995 | create_dummy_encoding_for_tk(interp, name)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
tcltklib.c:10859:44: error: passing argument 3 of 'rb_define_method' from incompatible pointer type [-Wincompatible-pointer-types]
10859 |     rb_define_method(ip, "encoding_table", ip_get_encoding_table, 0);
      |                                            ^~~~~~~~~~~~~~~~~~~~~
      |                                            |
      |                                            VALUE ()(VALUE) {aka long unsigned int ()(long unsigned int)}
C:/Ruby30/include/ruby-3.0.0/ruby/internal/method.h:29:41: note: expected 'VALUE ()(void)' {aka 'long unsigned int ()(void)'} but argument is of type 'VALUE ()(VALUE)' {aka 'long unsigned int ()(long unsigned int)'}
   29 | void rb_define_method(VALUE,const char,VALUE()(ANYARGS),int);
      |                                         ^~~~~~~~~~~~~~~~~
tcltklib.c:10463:1: note: 'ip_get_encoding_table' declared here
10463 | ip_get_encoding_table(interp)
      | ^~~~~~~~~~~~~~~~~~~~~
make: ** [Makefile:247 锛歵 cltklib.o] 閿欒 1
make failed, exit code 2
是现在 msys2 的软件仓库没有 mingw-w64-i686-tk-8.6.12-1-any.pkg.tar.zst 和 mingw-w64-i686-tcl-8.6.12-1-any.pkg.tar.zst 这两个包了,从好的电脑上面拷贝这两个包过来新的电脑上面本地安装包,再用 gem install tk 就可以装上了
