octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #55933] Build errors for dev Octave in mxe-oct


From: Markus Mützel
Subject: [Octave-bug-tracker] [bug #55933] Build errors for dev Octave in mxe-octave due to dropped suppport for Sundials 2.7.0
Date: Sat, 16 Mar 2019 13:40:07 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0

Follow-up Comment #3, bug #55933 (project octave):

MXE builds (with sundials 2.7.0) for default are failing with the error:

/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:264:39:
error: 'SUNMatrix' has not been declared
               N_Vector yyp, N_Vector, SUNMatrix JJ, void *user_data,
                                       ^~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:274:49:
error: 'SUNMatrix' has not been declared
                    N_Vector& yy, N_Vector& yyp, SUNMatrix& JJ);
                                                 ^~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:353:5:
error: 'SUNMatrix' does not name a type; did you mean 'Matrix'?
     SUNMatrix sunJacMatrix;
     ^~~~~~~~~
     Matrix
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:354:5:
error: 'SUNLinearSolver' does not name a type
     SUNLinearSolver sunLinearSolver;
     ^~~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:
In constructor 'octave::IDA::IDA()':
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:169:9:
error: class 'octave::IDA' does not have any field named 'sunJacMatrix'
         sunJacMatrix (nullptr), sunLinearSolver (nullptr)
         ^~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:169:33:
error: class 'octave::IDA' does not have any field named 'sunLinearSolver'
         sunJacMatrix (nullptr), sunLinearSolver (nullptr)
                                 ^~~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:
In constructor 'octave::IDA::IDA(realtype, ColumnVector, ColumnVector, const
octave_value&, octave::IDA::DAERHSFuncIDA)':
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:180:9:
error: class 'octave::IDA' does not have any field named 'sunJacMatrix'
         sunJacMatrix (nullptr), sunLinearSolver (nullptr)
         ^~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:180:33:
error: class 'octave::IDA' does not have any field named 'sunLinearSolver'
         sunJacMatrix (nullptr), sunLinearSolver (nullptr)
                                 ^~~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:
In destructor 'octave::IDA::~IDA()':
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:187:21:
error: 'sunLinearSolver' was not declared in this scope
       SUNLinSolFree(sunLinearSolver);
                     ^~~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:187:7:
error: 'SUNLinSolFree' was not declared in this scope
       SUNLinSolFree(sunLinearSolver);
       ^~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:188:21:
error: 'sunJacMatrix' was not declared in this scope
       SUNMatDestroy(sunJacMatrix);
                     ^~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:188:21:
note: suggested alternative: 'DiagMatrix'
       SUNMatDestroy(sunJacMatrix);
                     ^~~~~~~~~~~~
                     DiagMatrix
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:188:7:
error: 'SUNMatDestroy' was not declared in this scope
       SUNMatDestroy(sunJacMatrix);
       ^~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:188:7:
note: suggested alternative: 'N_VDestroy'
       SUNMatDestroy(sunJacMatrix);
       ^~~~~~~~~~~~~
       N_VDestroy
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:
In member function 'void octave::IDA::set_up(const ColumnVector&)':
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:418:9:
error: 'sunJacMatrix' was not declared in this scope
         sunJacMatrix = SUNDenseMatrix (num, num);
         ^~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:418:9:
note: suggested alternative: 'DiagMatrix'
         sunJacMatrix = SUNDenseMatrix (num, num);
         ^~~~~~~~~~~~
         DiagMatrix
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:418:24:
error: 'SUNDenseMatrix' was not declared in this scope
         sunJacMatrix = SUNDenseMatrix (num, num);
                        ^~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:418:24:
note: suggested alternative: 'SparseMatrix'
         sunJacMatrix = SUNDenseMatrix (num, num);
                        ^~~~~~~~~~~~~~
                        SparseMatrix
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:422:9:
error: 'sunLinearSolver' was not declared in this scope
         sunLinearSolver = SUNLinSol_Dense (yy, sunJacMatrix);
         ^~~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:422:27:
error: 'SUNLinSol_Dense' was not declared in this scope
         sunLinearSolver = SUNLinSol_Dense (yy, sunJacMatrix);
                           ^~~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:426:13:
error: 'IDASetLinearSolver' was not declared in this scope
         if (IDASetLinearSolver (mem, sunLinearSolver, sunJacMatrix))
             ^~~~~~~~~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:426:13:
note: suggested alternative: 'IDAGetLastOrder'
         if (IDASetLinearSolver (mem, sunLinearSolver, sunJacMatrix))
             ^~~~~~~~~~~~~~~~~~
             IDAGetLastOrder
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:429:24:
error: 'IDASetJacFn' was not declared in this scope
         if (havejac && IDASetJacFn (mem, IDA::jacdense) != 0)
                        ^~~~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:429:24:
note: suggested alternative: 'IDASetId'
         if (havejac && IDASetJacFn (mem, IDA::jacdense) != 0)
                        ^~~~~~~~~~~
                        IDASetId
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:
At global scope:
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:437:52:
error: 'SUNMatrix' has not been declared
                       N_Vector& yy, N_Vector& yyp, SUNMatrix& JJ)
                                                    ^~~~~~~~~
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:
In member function 'void octave::IDA::jacdense_impl(realtype, realtype,
_generic_N_Vector*&, _generic_N_Vector*&, int&)':
/home/osboxes/Documents/Repositories/Octave/mxe-octave-3/tmp-default-octave/octave-6.0.0/libinterp/dldfcn/__ode15__.cc:457:7:
error: 'SUNDenseMatrix_Data' was not declared in this scope
       SUNDenseMatrix_Data(JJ));
       ^~~~~~~~~~~~~~~~~~~
make[5]: *** [Makefile:19254: libinterp/dldfcn/__ode15___la-__ode15__.lo]
Error 1



Is it expected that the compilation fails if a version of sundials is found
that is too old?
"HAVE_SUNDIALS" is still defined. Is it possible to detect that the installed
version of sundials is too old and not use it at all?
I hope this is the relevant part of the config output:

checking for N_VNew_Serial in -lsundials_nvecserial... yes
checking ida/ida.h usability... yes
checking ida/ida.h presence... yes
checking for ida/ida.h... yes
checking for IDAInit in -lsundials_ida... yes
checking whether SUNDIALS IDA is configured with double precision realtype...
yes
checking sunlinsol/sunlinsol_dense.h usability... no
checking sunlinsol/sunlinsol_dense.h presence... no
checking for sunlinsol/sunlinsol_dense.h... no
checking whether SUNDIALS IDA includes the SUNLINSOL_DENSE linear solver...
yes
checking sunlinsol/sunlinsol_klu.h usability... no
checking sunlinsol/sunlinsol_klu.h presence... no
checking for sunlinsol/sunlinsol_klu.h... no
configure: WARNING: SUNDIALS IDA library not configured with SUNLINSOL_KLU or
sunlinksol_klu.h is not usable; ode15i and ode15s will not support the sparse
Jacobian feature
checking for IDASetJacFn... no
checking for IDASetLinearSolver... no
checking for SUNLinSol_Dense... no
checking for SUNLinSol_KLU... no
checking ida/ida_direct.h usability... yes
checking ida/ida_direct.h presence... yes
checking for ida/ida_direct.h... yes
checking ida_direct.h usability... no
checking ida_direct.h presence... no
checking for ida_direct.h... no
checking for IDADlsSetJacFn... no
checking for IDADlsSetLinearSolver... no
checking for SUNDenseLinearSolver... no
checking for SUNKLU... no



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?55933>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]