Package: octave-openems Version: 0.0.35+dfsg.1-3 Severity: normal Tags: d-i
Installed openems and octave-openems tried tutorials to "check correct installation". failed at https://openems.de/index.php/Tutorial:_Rectangular_Waveguide.html - plot 3 is empty - seems to have trouble to set up hdf5 digging down, I could find a "works for me workaround", but no patch yet dropping my findings here, just in case sbdy wants to pick up --------8<--------------------- octave:35> setup setting up openEMS matlab/octave interface compiling oct files HDF5 library path found at: /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so /usr/lib/x86_64-linux-gnu/hdf5/openmpi HDF5 include path found at: /usr/include/hdf5/serial/hdf5.h /usr/include/hdf5/openmpi g++: error: h5readatt_octave.cc: Datei oder Verzeichnis nicht gefunden ------8<----------------------------- what I found: - issue not covered in recent unstable changelog - h5readatt_octave.cc is missing - maybe deliberately, since it does not work? - looks like the upstream "setup.m" does not get it right in debian ecosystem - I have both libhdf5-103:amd64 (aka 'serial') and libhdf5-openmpi-103:amd64 installed - trying to uninstall openmpi version pulls out octave-openems, too so I tried - pulled h5readatt_octave.cc from upstream source to try manual build - can build with mkoctfile -L/usr/lib/x86_64-linux-gnu/hdf5/openmpi -I/usr/include/hdf5/openmpi -I/usr/lib/x86_64-linux-gnu/openmpi/include -lhdf5 h5readatt_octave.cc - upstream "setup.m" appears just to include hdf5, not the /usr/lib/x86_64-linux-gnu/openmpi/include - .... and it does not run in the tutorial: ---8<--------------- error: ReadHDF5Attribute: /usr/share/octave/packages/openems-0.0.35/h5readatt_octave.oct: failed to load: /usr/share/octave/packages/openems-0.0.35/h5readatt_octave.oct: undefined symbol: _ZN3MPI8Datatype4FreeEv ---8<--------------- ... obviously there are deeper dependency issues... - next try: manually select serial hdf5: mkoctfile -L/usr/lib/x86_64-linux-gnu/hdf5/serial -I/usr/include/hdf5/serial -lhdf5 h5readatt_octave.cc OK, this way it works (both manual build and tutorial) ... just to find out that the hdf5 plot capabilities are quite rudimentary. So maybe there is no serious need for octave hdf5 beyond the tutorial? At least not in applications that beg for openmpi. Assume they'll use sth more serious like paraview? Proposals to remove the hurdle for beginners: - leave it as it is but put a proper note at a proper place e.g. in the console output of setup.m - strip down half baken upstream setup.m to forcefully/preferrable compile against 'serial', not 'openmpi' - remove the openmpi dependency of octeave-openems You decide. -- System Information: Debian Release: 10.8 APT prefers stable APT policy: (500, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.19.0-14-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.utf-8), LANGUAGE=de_DE:en (charmap=UTF-8) (ignored: LC_ALL set to en_US.utf-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages octave-openems depends on: ii epstool 3.09-1 ii fig2dev [transfig] 1:3.2.7a-5+deb10u3 ii libc6 2.28-10 ii libgcc1 1:8.3.0-6 ii libgomp1 8.3.0-6 ii libhdf5-cpp-103 1.10.4+repack-10 ii liboctave6 4.4.1-5 ii libstdc++6 8.3.0-6 ii octave 4.4.1-5 ii openems 0.0.35+dfsg.1-3 octave-openems recommends no packages. octave-openems suggests no packages. -- no debconf information