Menu

#164 sci-libs/plplot-5.11.0-r1 fails to compile with octave-4.0.0 under gentoo

open
nobody
None
5
2015-09-26
2015-07-28
No

Compiling of plplot fails with:
...
make[2]: Entering directory '/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build'
[ 25%] Building CXX object bindings/octave/CMakeFiles/plplot_octave.dir/plplot_octaveOCTAVE_wrap.cxx.o
cd /var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/bindings/octave && /usr/bin/x86_64-pc-linux-gnu-g++ -DPLPLOT_HAVE_CONFIG_H -Dplplot_octave_EXPORTS -march=amdfam10 -O2 -pipe -fPIC -I/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0/include -I/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0/lib/qsastime -I/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build -I/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/include -I/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/bindings/octave -I/usr/include/octave-4.0.0 -I/usr/include/octave-4.0.0/octave -I/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0/bindings/swig-support -o CMakeFiles/plplot_octave.dir/plplot_octaveOCTAVE_wrap.cxx.o -c /var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/bindings/octave/plplot_octaveOCTAVE_wrap.cxx
/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1611:18: error: ‘hid_t’ has not been declared
save_hdf5 (hid_t loc_id, const char name, bool save_as_floats) {
^
/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1616:18: error: ‘hid_t’ has not been declared
load_hdf5 (hid_t loc_id, const char
name, bool have_h5giterate_bug) {
^
/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1832:18: error: ‘hid_t’ has not been declared
save_hdf5 (hid_t loc_id, const char name, bool save_as_floats)
^
/var/tmp/portage/sci-libs/plplot-5.11.0-r1/work/plplot-5.11.0_build/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1836:18: error: ‘hid_t’ has not been declared
load_hdf5 (hid_t loc_id, const char
name, bool have_h5giterate_bug)
...

After downgrading of octave the installation of plplot works again:

root@caiman:/usr/local/portage/media-libs/libkface(535)# qlist -Iv octave
sci-mathematics/octave-3.8.2
root@caiman:/usr/local/portage/media-libs/libkface(536)# MAKEOPTS=-j1 emerge -vD plplot
...

Original instance of package unmerged safely.
sci-libs/plplot-5.11.0-r1 merged.
Regenerating /etc/ld.so.cache...

I posted already a gentoo bug at https://bugs.gentoo.org/show_bug.cgi?id=554156 .

Discussion

  • Alan W. Irwin

    Alan W. Irwin - 2015-07-29

    Here is the current status of this bug. The fact is that octave-4.0.0 introduced a number of backwards-incompatible changes, and it is going to take time for both SWIG and PLplot to catch up with that.

    If you want to pursue this further you have to build SWIG with the patch at https://github.com/swig/swig/pull/460.patch applied or wait until this patch propagates into a SWIG release.

    Some octave-4.0.0-related changes have also been made to the git version of PLplot which is about to be released as 5.11.1. So with that patched SWIG, the git version of PLplot, and a version of octave-4.0.0 that I built myself; there were no PLplot build errors. So that is a promising start, but at run time octave-4.0.0 segfaulted, and investigation of those run-time errors continues.

     

    Last edit: Alan W. Irwin 2015-07-29
  • Juergen Rose

    Juergen Rose - 2015-09-26

    Hello Alan, thank you for the hint. I applied the patch from https://patch-diff.githubusercontent.com/raw/swig/swig/pull/460 to swig-3.0.2 and then reinstalled plplot-5.11.0-r1 under gentoo with the octave USE flag. The subsequent first start of octave-4.0.0 did not segfault. But it was only the bare start of octave, i.e. without any use of plplot.
    Do you have any octave script example using plplot, that I can check, if it is working here.

     
  • Juergen Rose

    Juergen Rose - 2015-09-26

    If I try the /usr/share/plplot_octave/arrow.m script, I get the following:

    >> function arrow (coord, mag, rot, col)
    __pl_init;
    if (nargin == 1)# col
     ...
    endif
    endfunction
    >> arrow([2,4],5,10,'red')
    error: '__pl_init' undefined near line 3 column 3
    error: called from
          arrow at line 3 column 3
    

    Do I something wrong? I do not have experience with octave.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.