Subject: Bug#841611: ruby-gsl: FTBFS: ERROR: Test
"ruby2.3" failed:
/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_requi
re.rb:55:in `require':
/<<BUILDDIR>>/ruby-gsl-1.16.0.6+dfsg1/
debian/ruby-gsl/usr/lib/x86_64-linux-gnu/ruby/vend
or_ruby/2.3.0/gsl_native.so: undefined symbol:
gsl_sf_legendre_array_size -
/<<BUILDDIR>>/ruby-gsl-1.16.0.6+dfsg1/
debian/ruby-gsl/usr/lib/x86_64-linux-gnu/ruby/vend
or_ruby/2.3.0/gsl_native.so (LoadError)



Hi Dirk,

2016-12-19 23:58 GMT+01:00 Dirk Eddelbuettel <[email protected]>:
>
> Hi Balint,
>
> On 19 December 2016 at 13:57, Bálint Réczey wrote:
> | Hi Dirk,
> |
> | 2016-12-19 0:30 GMT+01:00 Dirk Eddelbuettel <[email protected]>:
> | >
> | > On 10 November 2016 at 13:22, Balint Reczey wrote:
> | > | Control: reassign -1 gsl 2.2.1+dfsg-1
> | > | Control: affects -1 ruby-gsl
> | > |
> | > |
> | > | Hi Dirk,
> | > |
> | > | It seems ruby-gsl is missing some deprecated functions.
> | > | Please re-enable debian/patches/dont-disable-deprecated to let ruby-gsl
> | > | build again.
> | >
> | > Well I could -- but according to https://github.com/SciRuby/rb-gsl a
> current
> | > ruby-gsl exists.
> | >
> | > Why are we stuck with the 1.* series? Should we not port forward?
> |
> | I tried updating to 2.1.0 but it still uses deprecated functions,
> | hence the reassignment.
>
> Well I'd rather not. I think upstream would rather see a plainer versions.
>
> Can you detail what is missing?
>
> Also see https://github.com/SciRuby/rb-gsl/blob/master/ChangeLog#L3-L7 which
> says
>
> == Fri March 4 2016
> * Added compatibility for NMatrix interconversion with GSL::Vector and
> GSL::Matrix
> * Added NMatrix compatibility to various to make them compatible with NMatrix
> data types.
> * Gem is now compatible with GSL 2.1.
> * Version bump to 2.1.0
>
> Sounds to me it should work with our version.

Ruby-gsl is compatible with GSL 2.1 when deprecated symbols are not
disabled in GSL.

I have started removing references to them with
gsl_sf_legendre_array_size(), but
then the next one build is failing with is gsl_sf_legendre_sphPlm_array() :

...
*** running test/gsl_test.rb ***
/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in
`require':
/<<BUILDDIR>>/ruby-gsl-2.1.0+dfsg1/debian/ruby-gsl/usr/lib/i386-linux-gnu/ruby/vendor_ruby/2.3.0/gsl_native.so:
undefined symbol: gsl_sf_legendre_sphPlm_array -
/<<BUILDDIR>>/ruby-gsl-2.1.0+dfsg1/debian/ruby-gsl/usr/lib/i386-linux-gnu/ruby/vendor_ruby/2.3.0/gsl_native.so
(LoadError)
from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from
/<<BUILDDIR>>/ruby-gsl-2.1.0+dfsg1/debian/ruby-gsl/usr/lib/ruby/vendor_ruby/gsl.rb:11:in
...

I used the attached patch on top of
https://anonscm.debian.org/cgit/pkg-ruby-extras/ruby-gsl.git master .

IMO since ruby-gsl 2.1 provides the symbols which are deprecated in
GSL unconditionally I can't remove them
from ruby-gsl's API thus ruby-gsl needs deprecated GSL functions to be
provided by GSL.

I understand that upstreams would like to see code migrating from the
deprecated functionality fast, but immediate removal is not the best
for users IMO.

Cheers,
Balint

>
> Dirk
>
> |
> | Cheers,
> | Balint
> |
> | >
> | > Dirk
> | >
> | > | Cheers,
> | > | Balint
> | > |
> | > | On Fri, 21 Oct 2016 15:37:05 +0200 Lucas Nussbaum <[email protected]>
> wrote:
> | > | > Source: ruby-gsl
> | > | > Version: 1.16.0.6+dfsg1-2
> | > | > Severity: serious
> | > | > Tags: stretch sid
> | > | > User: [email protected]
> | > | > Usertags: qa-ftbfs-20161021 qa-ftbfs
> | > | > Justification: FTBFS on amd64
> | > | >
> | > | > Hi,
> | > | >
> | > | > During a rebuild of all packages in sid, your package failed to build
> on
> | > | > amd64.
> | > | >
> | > | > Relevant part (hopefully):
> | > | > > /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in
> `require':
> /<<BUILDDIR>>/ruby-gsl-1.16.0.6+dfsg1/debian/ruby-gsl/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/2.3.0/gsl_native.so:
> undefined symbol: gsl_sf_legendre_array_size -
> /<<BUILDDIR>>/ruby-gsl-1.16.0.6+dfsg1/debian/ruby-gsl/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/2.3.0/gsl_native.so
> (LoadError)
> | > | > > from
> /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
> | > | > > from
> /<<BUILDDIR>>/ruby-gsl-1.16.0.6+dfsg1/debian/ruby-gsl/usr/lib/ruby/vendor_ruby/gsl.rb:6:in
> `<top (required)>'
> | > | > > from
> /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
> | > | > > from
> /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
> | > | > > from test_helper.rb:2:in `<main>'
> | > | > > ERROR: Test "ruby2.3" failed:
> | > | >
> | >
> | > --
> | > http://dirk.eddelbuettel.com | @eddelbuettel | [email protected]
>
> --
> http://dirk.eddelbuettel.com | @eddelbuettel | [email protected]

Attachment: 0001-WIP-Fix-FTBFS-due-to-missing-gsl_sf_legendre_array_s.patch
Description: Text Data



Programming list archiving by: Enterprise Git Hosting