build problem with databases/rubygem-mysql

David Gessel gessel at blackrosetech.com
Mon Jun 1 15:06:18 UTC 2020


Dear Ruby maintainer,



I'm getting a build error with rubygem-mysql-2.9.1 since updating to MariaDB 10.2.

  FreeBSD 11.3-RELEASE-p8 #0 r360490:

mariadb102-client-10.2.32


Oddly, this is not the version of the port that is installed:

# pkg version -v | grep mysql
rubygem-mysql2-0.5.2               =   up-to-date with index

which does build.

A short build log to fail:


===>  Staging for rubygem-mysql-2.9.1
===>   rubygem-mysql-2.9.1 depends on file: /usr/local/bin/ruby26 - found
===>   rubygem-mysql-2.9.1 depends on file: /usr/local/bin/gem26 - found
===>   Generating temporary packing list
(cd /var/ports/usr/ports/databases/rubygem-mysql/work/mysql-2.9.1; /usr/bin/env RB_USER_INSTALL=yes LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 /usr/local/bin/gem26 install -l --no-update-sources --install-dir /var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/lib/ruby/gems/2.6 --ignore-dependencies --bindir=/var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/bin --no-document mysql-2.9.1.gem -- )
Building native extensions. This could take a while...
ERROR:  Error installing mysql-2.9.1.gem:
         ERROR: Failed to build gem native extension.

     current directory: /var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/lib/ruby/gems/2.6/gems/mysql-2.9.1/ext/mysql_api
/usr/local/bin/ruby26 -I /usr/local/lib/ruby/site_ruby/2.6 -r ./siteconf20200601-28396-32uxrj.rb extconf.rb
checking for mysql_ssl_set()... yes
checking for rb_str_set_len()... yes
checking for rb_thread_start_timer()... no
checking for mysql.h... yes
creating Makefile

current directory: /var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/lib/ruby/gems/2.6/gems/mysql-2.9.1/ext/mysql_api
make "DESTDIR=" clean

current directory: /var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/lib/ruby/gems/2.6/gems/mysql-2.9.1/ext/mysql_api
make "DESTDIR="
compiling mysql.c
mysql.c:278:18: error: no member named 'reconnect' in 'struct st_mysql'
     myp->handler.reconnect = 0;
     ~~~~~~~~~~~~ ^
mysql.c:355:8: error: no member named 'reconnect' in 'struct st_mysql'
     m->reconnect = 0;
     ~  ^
mysql.c:929:29: error: no member named 'reconnect' in 'struct st_mysql'
     return GetHandler(obj)->reconnect ? Qtrue : Qfalse;
            ~~~~~~~~~~~~~~~  ^
mysql.c:939:22: error: no member named 'reconnect' in 'struct st_mysql'
     GetHandler(obj)->reconnect = (flag == Qnil || flag == Qfalse) ? 0 : 1;
     ~~~~~~~~~~~~~~~  ^
4 errors generated.
*** Error code 1

Stop.
make[2]: stopped in /var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/lib/ruby/gems/2.6/gems/mysql-2.9.1/ext/mysql_api

make failed, exit code 1

Gem files will remain installed in /var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/lib/ruby/gems/2.6/gems/mysql-2.9.1 for inspection.
Results logged to /var/ports/usr/ports/databases/rubygem-mysql/work/stage/usr/local/lib/ruby/gems/2.6/extensions/amd64-freebsd-11/2.6/mysql-2.9.1/gem_make.out
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/databases/rubygem-mysql
*** Error code 1

Stop.
make: stopped in /usr/ports/databases/rubygem-mysql




More information about the freebsd-ruby mailing list