On 30. 4. 26 02:07, Jun Omae wrote:
On 2026/04/29 16:57, Branko Čibej wrote:
Building swig-rb with Ruby 4.0.3, I got this compilation error:
subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c:1641:38: error:
use of undeclared identifier 'ruby_errinfo'; did you mean 'rb_errinfo'?
1641 | ruby_errinfo,
| ^~~~~~~~~~~~
| rb_errinfo
If the Ruby is installed in non-standard location, it is needed to pass libdir
of Ruby using -L option to LDFLAGS for configure.
e.g.
[[[
$ ./configure ... LDFLAGS="-L$(ruby -rrbconfig -e "print
RbConfig::CONFIG['libdir']")"
]]]
This worked, thanks!
We are able to add automatically the libdir to the link options, I think.
[[[
diff --git a/build/ac-macros/swig.m4 b/build/ac-macros/swig.m4
index 16fa2ed6c..8f5789bde 100644
--- a/build/ac-macros/swig.m4
+++ b/build/ac-macros/swig.m4
@@ -309,7 +309,7 @@ suitable Ruby interpreter is not found."
SWIG_RB_LINK="$svn_cv_ruby_link"
AC_CACHE_CHECK([how to link Ruby libraries], [ac_cv_ruby_libs], [
- ac_cv_ruby_libs="$rbconfig_LIBRUBYARG $rbconfig_LIBS"
+ ac_cv_ruby_libs="-L$rbconfig_libdir $rbconfig_LIBRUBYARG
$rbconfig_LIBS"
])
SWIG_RB_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_ruby_libs)`"
]]]
But this didn't. The error happens during compilation of
subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c
not during linking. It seems that the automatic fix is a bit more involved.
-- Brane