replab / replab

RepLAB - a toolbox for representation theory
https://replab.github.io
Mozilla Public License 2.0
18 stars 10 forks source link

Bugs when running RepLAB on Octave/Windows #253

Open denisrosset opened 4 years ago

denisrosset commented 4 years ago

@smygdala observed that RepLAB, when run in the Octave kernel in Windows, throws a few interesting errors:

jdbancal commented 4 years ago

It looks strange that Octave would require Perl, but not provide it...

The other error is also not expected: all C/C++ routines are meant to be optional, hence in principle their failure should be caught by a try-catch bracket. What do the error messages look like?

smygdala commented 4 years ago

Here is an update on my previous observations. I am trying to run RepLAB in Jupyter Lab using the Octave kernel on Windows and it still throws some interesting errors:

Can't locate Texinfo/ModulePath.pm in @INC (you may need to install the Texinfo::ModulePath module) (@INC contains: C:\Octave\Octave-5.2.0\mingw64\bin C:/strawberry-perl-5.30.2.1-64bit-portable/perl/site/lib C:/strawberry-perl-5.30.2.1-64bit-portable/perl/vendor/lib C:/strawberry-perl-5.30.2.1-64bit-portable/perl/lib) at C:\Octave\Octave-5.2.0\mingw64\bin\makeinfo line 77. BEGIN failed--compilation aborted at C:\Octave\Octave-5.2.0\mingw64\bin\makeinfo line 88.
warning: print_usage: Texinfo formatting filter exited abnormally

This Perl module that is needed, though, seems to be included in the directory \mingw64\share\texinfo\Texinfo. I looked at corresponding line in the makeinfo file and what it does is to search for this module in a $datadir='/mingw64/share';, which should be the correct directory. I even tried to add an enviroment variable pointing to that particular directory, but I am still not able to fix this.

warning: -largeArrayDims and -compatibleArrayDims are accepted for compatibility, but ignored In file included from C:/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/5.1.0/include/c++/cstdint:35:0, from C:\Octave\Octave-5.2.0\mingw64\include\octave-5.2.0\octave/octave-config.h:64, from C:\Octave\Octave-5.2.0\mingw64\include\octave-5.2.0\octave/mex.h:51, from burningAlgorithmFast_mex.cpp:1: C:/TDM-GCC-64/lib/gcc/x86_64-w64-mingw32/5.1.0/include/c++/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.

I somehow managed to get through with this by repeating the procedure of installing Sphinx on my machine and running replab_generate sphinxsrc again. Now, all I am getting is a warning:

warning: strmatch is obsolete; use strncmp or strcmp instead

I am not sure how I made it work, but the important point is that this error does not appear anymore. Any comments on the Perl issue that could help me fix this error?