[DRE-maint] Bug#996237: ruby-gsl: FTBFS with ruby3.0: include/rb_gsl_common.h:29:1: error: unknown type name ‘EXTERN’

Antonio Terceiro terceiro at debian.org
Tue Oct 12 13:25:13 BST 2021


Source: ruby-gsl
Version: 2.1.0.3+dfsg1-3
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: debian-ruby at lists.debian.org
Usertags: ruby3.0

Hi,

We are about to enable building against ruby3.0 on unstable. During a test
rebuild, ruby-gsl was found to fail to build in that situation.

To reproduce this locally, you need to install ruby-all-dev from experimental
on an unstable system or build chroot.

Relevant part (hopefully):
> gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -I. -I/usr/include/x86_64-linux-gnu/ruby-3.0.0 -I/usr/include/ruby-3.0.0/ruby/backward -I/usr/include/ruby-3.0.0 -I. -DGSL_VERSION=2.7 -DGSL_1_15_LATER -DGSL_1_15_LATER -DGSL_1_16_LATER -DGSL_2_0_LATER -DGSL_2_1_LATER -DHAVE_ROUND -DHAVE_GSL_EIGEN_FRANCIS -DHAVE_GNU_GRAPH -DHAVE_TAMU_ANOVA_TAMU_ANOVA_H -DHAVE_GSL_SF_MATHIEU_A_E -DHAVE_GSL_SF_MATHIEU_B_E -DHAVE_GSL_SF_MATHIEU_CE_E -DHAVE_GSL_SF_MATHIEU_SE_E -DHAVE_GSL_SF_MATHIEU_MC_E -DHAVE_GSL_SF_MATHIEU_MS_E -I/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0 -Wdate-time -D_FORTIFY_SOURCE=2   -fPIC -g -O2 -ffile-prefix-map=/build/ruby3.0-2KsnwC/ruby3.0-3.0.2=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wall -Iinclude -I/usr/include  -o array.o -c array.c
> In file included from array.c:12:
> include/rb_gsl_common.h:29:1: error: unknown type name ‘EXTERN’
>    29 | EXTERN ID rb_gsl_id_beg, rb_gsl_id_end, rb_gsl_id_excl, rb_gsl_id_to_a;
>       | ^~~~~~
> include/rb_gsl_common.h:29:11: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_gsl_id_beg’
>    29 | EXTERN ID rb_gsl_id_beg, rb_gsl_id_end, rb_gsl_id_excl, rb_gsl_id_to_a;
>       |           ^~~~~~~~~~~~~
> In file included from array.c:12:
> include/rb_gsl_common.h:352:1: error: unknown type name ‘EXTERN’
>   352 | EXTERN VALUE cGSL_Object;
>       | ^~~~~~
> include/rb_gsl_common.h:352:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cGSL_Object’
>   352 | EXTERN VALUE cGSL_Object;
>       |              ^~~~~~~~~~~
> In file included from array.c:13:
> include/rb_gsl_array.h:39:1: error: unknown type name ‘EXTERN’
>    39 | EXTERN VALUE cgsl_block, cgsl_block_int;
>       | ^~~~~~
> include/rb_gsl_array.h:39:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_block’
>    39 | EXTERN VALUE cgsl_block, cgsl_block_int;
>       |              ^~~~~~~~~~
> include/rb_gsl_array.h:40:1: error: unknown type name ‘EXTERN’
>    40 | EXTERN VALUE cgsl_block_uchar;
>       | ^~~~~~
> include/rb_gsl_array.h:40:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_block_uchar’
>    40 | EXTERN VALUE cgsl_block_uchar;
>       |              ^~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:41:1: error: unknown type name ‘EXTERN’
>    41 | EXTERN VALUE cgsl_block_complex;
>       | ^~~~~~
> include/rb_gsl_array.h:41:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_block_complex’
>    41 | EXTERN VALUE cgsl_block_complex;
>       |              ^~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:42:1: error: unknown type name ‘EXTERN’
>    42 | EXTERN VALUE cgsl_vector, cgsl_vector_complex;
>       | ^~~~~~
> include/rb_gsl_array.h:42:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector’
>    42 | EXTERN VALUE cgsl_vector, cgsl_vector_complex;
>       |              ^~~~~~~~~~~
> include/rb_gsl_array.h:43:1: error: unknown type name ‘EXTERN’
>    43 | EXTERN VALUE cgsl_vector_col;
>       | ^~~~~~
> include/rb_gsl_array.h:43:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_col’
>    43 | EXTERN VALUE cgsl_vector_col;
>       |              ^~~~~~~~~~~~~~~
> include/rb_gsl_array.h:44:1: error: unknown type name ‘EXTERN’
>    44 | EXTERN VALUE cgsl_vector_col_view;
>       | ^~~~~~
> include/rb_gsl_array.h:44:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_col_view’
>    44 | EXTERN VALUE cgsl_vector_col_view;
>       |              ^~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:45:1: error: unknown type name ‘EXTERN’
>    45 | EXTERN VALUE cgsl_vector_complex_col;
>       | ^~~~~~
> include/rb_gsl_array.h:45:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_complex_col’
>    45 | EXTERN VALUE cgsl_vector_complex_col;
>       |              ^~~~~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:46:1: error: unknown type name ‘EXTERN’
>    46 | EXTERN VALUE cgsl_vector_complex_col_view;
>       | ^~~~~~
> include/rb_gsl_array.h:46:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_complex_col_view’
>    46 | EXTERN VALUE cgsl_vector_complex_col_view;
>       |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:47:1: error: unknown type name ‘EXTERN’
>    47 | EXTERN VALUE cgsl_vector_view, cgsl_vector_complex_view;
>       | ^~~~~~
> include/rb_gsl_array.h:47:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_view’
>    47 | EXTERN VALUE cgsl_vector_view, cgsl_vector_complex_view;
>       |              ^~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:48:1: error: unknown type name ‘EXTERN’
>    48 | EXTERN VALUE cgsl_vector_view_ro, cgsl_vector_col_view_ro;
>       | ^~~~~~
> include/rb_gsl_array.h:48:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_view_ro’
>    48 | EXTERN VALUE cgsl_vector_view_ro, cgsl_vector_col_view_ro;
>       |              ^~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:49:1: error: unknown type name ‘EXTERN’
>    49 | EXTERN VALUE cgsl_vector_complex_view_ro;
>       | ^~~~~~
> include/rb_gsl_array.h:49:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_complex_view_ro’
>    49 | EXTERN VALUE cgsl_vector_complex_view_ro;
>       |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:51:1: error: unknown type name ‘EXTERN’
>    51 | EXTERN VALUE cgsl_vector_int, cgsl_vector_int_col;
>       | ^~~~~~
> include/rb_gsl_array.h:51:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_int’
>    51 | EXTERN VALUE cgsl_vector_int, cgsl_vector_int_col;
>       |              ^~~~~~~~~~~~~~~
> include/rb_gsl_array.h:52:1: error: unknown type name ‘EXTERN’
>    52 | EXTERN VALUE cgsl_vector_int_view, cgsl_vector_int_col_view;
>       | ^~~~~~
> include/rb_gsl_array.h:52:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_int_view’
>    52 | EXTERN VALUE cgsl_vector_int_view, cgsl_vector_int_col_view;
>       |              ^~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:53:1: error: unknown type name ‘EXTERN’
>    53 | EXTERN VALUE cgsl_vector_int_view_ro, cgsl_vector_int_col_view_ro;
>       | ^~~~~~
> include/rb_gsl_array.h:53:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_vector_int_view_ro’
>    53 | EXTERN VALUE cgsl_vector_int_view_ro, cgsl_vector_int_col_view_ro;
>       |              ^~~~~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:55:1: error: unknown type name ‘EXTERN’
>    55 | EXTERN VALUE cgsl_matrix, cgsl_matrix_complex;
>       | ^~~~~~
> include/rb_gsl_array.h:55:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_matrix’
>    55 | EXTERN VALUE cgsl_matrix, cgsl_matrix_complex;
>       |              ^~~~~~~~~~~
> include/rb_gsl_array.h:56:1: error: unknown type name ‘EXTERN’
>    56 | EXTERN VALUE cgsl_matrix_view_ro;
>       | ^~~~~~
> include/rb_gsl_array.h:56:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_matrix_view_ro’
>    56 | EXTERN VALUE cgsl_matrix_view_ro;
>       |              ^~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:57:1: error: unknown type name ‘EXTERN’
>    57 | EXTERN VALUE cgsl_matrix_complex_view_ro;
>       | ^~~~~~
> include/rb_gsl_array.h:57:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_matrix_complex_view_ro’
>    57 | EXTERN VALUE cgsl_matrix_complex_view_ro;
>       |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:58:1: error: unknown type name ‘EXTERN’
>    58 | EXTERN VALUE cgsl_matrix_view, cgsl_matrix_complex_view;
>       | ^~~~~~
> include/rb_gsl_array.h:58:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_matrix_view’
>    58 | EXTERN VALUE cgsl_matrix_view, cgsl_matrix_complex_view;
>       |              ^~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:59:1: error: unknown type name ‘EXTERN’
>    59 | EXTERN VALUE cgsl_matrix_int, cgsl_matrix_int_view;
>       | ^~~~~~
> include/rb_gsl_array.h:59:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_matrix_int’
>    59 | EXTERN VALUE cgsl_matrix_int, cgsl_matrix_int_view;
>       |              ^~~~~~~~~~~~~~~
> include/rb_gsl_array.h:60:1: error: unknown type name ‘EXTERN’
>    60 | EXTERN VALUE cgsl_matrix_int_view_ro;
>       | ^~~~~~
> include/rb_gsl_array.h:60:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_matrix_int_view_ro’
>    60 | EXTERN VALUE cgsl_matrix_int_view_ro;
>       |              ^~~~~~~~~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:61:1: error: unknown type name ‘EXTERN’
>    61 | EXTERN VALUE cgsl_permutation;
>       | ^~~~~~
> include/rb_gsl_array.h:61:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_permutation’
>    61 | EXTERN VALUE cgsl_permutation;
>       |              ^~~~~~~~~~~~~~~~
> include/rb_gsl_array.h:62:1: error: unknown type name ‘EXTERN’
>    62 | EXTERN VALUE cgsl_index;
>       | ^~~~~~
> include/rb_gsl_array.h:62:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_index’
>    62 | EXTERN VALUE cgsl_index;
>       |              ^~~~~~~~~~
> include/rb_gsl_array.h:63:1: error: unknown type name ‘EXTERN’
>    63 | EXTERN VALUE cgsl_function;
>       | ^~~~~~
> include/rb_gsl_array.h:63:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_function’
>    63 | EXTERN VALUE cgsl_function;
>       |              ^~~~~~~~~~~~~
> include/rb_gsl_array.h:64:1: error: unknown type name ‘EXTERN’
>    64 | EXTERN VALUE mgsl_narray;
>       | ^~~~~~
> include/rb_gsl_array.h:64:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mgsl_narray’
>    64 | EXTERN VALUE mgsl_narray;
>       |              ^~~~~~~~~~~
> include/rb_gsl_array.h:66:1: error: unknown type name ‘EXTERN’
>    66 | EXTERN VALUE mDirac;
>       | ^~~~~~
> include/rb_gsl_array.h:66:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mDirac’
>    66 | EXTERN VALUE mDirac;
>       |              ^~~~~~
> In file included from array.c:14:
> include/rb_gsl_complex.h:21:1: error: unknown type name ‘EXTERN’
>    21 | EXTERN VALUE cgsl_complex;
>       | ^~~~~~
> include/rb_gsl_complex.h:21:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘cgsl_complex’
>    21 | EXTERN VALUE cgsl_complex;
>       |              ^~~~~~~~~~~~
> In file included from /usr/include/ruby-3.0.0/ruby.h:38,
>                  from include/rb_gsl_common.h:15,
>                  from array.c:12:
> array.c: In function ‘rb_gsl_range2ary’:
> array.c:397:25: error: ‘rb_gsl_id_to_a’ undeclared (first use in this function); did you mean ‘rb_gsl_matrix_to_i’?
>   397 |   ary = rb_funcall(obj, rb_gsl_id_to_a, 0);
>       |                         ^~~~~~~~~~~~~~
> /usr/include/ruby-3.0.0/ruby/ruby.h:137:27: note: in definition of macro ‘rb_funcall’
>   137 |         rb_funcallv(recv, mid, \
>       |                           ^~~
> array.c:397:25: note: each undeclared identifier is reported only once for each function it appears in
>   397 |   ary = rb_funcall(obj, rb_gsl_id_to_a, 0);
>       |                         ^~~~~~~~~~~~~~
> /usr/include/ruby-3.0.0/ruby/ruby.h:137:27: note: in definition of macro ‘rb_funcall’
>   137 |         rb_funcallv(recv, mid, \
>       |                           ^~~
> array.c: In function ‘Init_gsl_array’:
> array.c:476:38: error: ‘cGSL_Object’ undeclared (first use in this function)
>   476 |                                      cGSL_Object);
>       |                                      ^~~~~~~~~~~
> make[1]: *** [Makefile:245: array.o] Error 1


The full build log is available at
https://people.debian.org/~kanashiro/ruby3.0/round2/builds/3/ruby-gsl/ruby-gsl_2.1.0.3+dfsg1-3+rebuild1633382066_amd64.build.txt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-ruby-extras-maintainers/attachments/20211012/ac053ceb/attachment.sig>


More information about the Pkg-ruby-extras-maintainers mailing list