octave-ruby icon indicating copy to clipboard operation
octave-ruby copied to clipboard

octave-3.8.1 compatibility

Open andmanea opened this issue 11 years ago • 2 comments

Not compatible with octave-3.8.1

andmanea avatar May 28 '14 09:05 andmanea

what does not work for you?

I had a problem installing the gem against 3.8.1 with libcruft. But I've build octave-3.6.x from source and linked the libcruft.so* that is generated.

All functionality that I've tried so far is working (but haven't tested it extensively)

averissimo avatar Aug 27 '14 17:08 averissimo

Same problem here. According to the changelog for the Ubuntu Trusty release (14.04), libcruft was removed from the package because it no longer exists upstream:

octave (3.8.0~rc1-1) experimental; urgency=medium [ Sébastien Villemot ] ... * Bump SONAME of library package to liboctave2. Also stop distributing libcruft, which no longer exists.

Building the gem from source works fine -- no need to rebuild Octave (QUITE the headache). Remove the libcruft dependency from ext/octave_api/extconf.rb and run

     ruby setup.rb config -- --with-octave-include=/usr/include/octave-3.8.1/octave 
     ruby setup.rb setup
     ruby setup.rb install

So it works, yes, but it would be nice to be able to just 'gem install octave-ruby'. I can't distribute anything I build on top of octave-ruby to less technical end users. Not when a download-modify-and-build is required.

UPDATE: almost works. In fact, starting the engine causes Ruby to crash on exit:

Finished tests in 5.605737s, 0.5352 tests/s, 0.0000 assertions/s.

3 tests, 0 assertions, 0 failures, 0 errors, 0 skips
bash# irb
1.9.3-head :001 > require 'octave'
 => true 
1.9.3-head :002 > oct = Octave::Engine.new
warning: function /usr/share/octave/packages/specfun-1.1.0/ellipke.m shadows a core library function
warning: function /usr/share/octave/packages/specfun-1.1.0/erfcinv.m shadows a built-in function
warning: function /usr/share/octave/packages/specfun-1.1.0/expint.m shadows a core library function
warning: function /usr/lib/x86_64-linux-gnu/octave/packages/specfun-1.1.0/x86_64-pc-linux-gnu-api-v49+/ellipj.oct shadows a built-in function
 => #<Octave::Engine:0x00000002214678 @driver=#<Octave::Driver::Native::Driver:0x00000002229370>> 
1.9.3-head :003 > exit
*** Error in `irb': corrupted double-linked list: 0x000000000258aec0 ***
Aborted (core dumped)

mkfs avatar Mar 17 '15 01:03 mkfs