Open sagitter opened 3 years ago
Hi @sagitter ,
We will take a look at the issue. for the meantime could you try to compile it with the bundled sundials please?
... cmake -DUSE_BUNDLE_SUNDIALS=ON .. '''
Could you also provide your system info (platform, compiler etc) and copy the cmake log here please?
Hi @WeiliangChenOIST ,
could you try to compile it with the bundled sundials please?
With bundled sundials (cvode-2.6.0), STEPS is correctly compiled.
In Fedora 34+, we're using new Sundials-5.*
, GCC-11.1.1
sundials-5 files:
/usr/include/arkode
/usr/include/arkode/arkode.h
/usr/include/arkode/arkode_arkstep.h
/usr/include/arkode/arkode_bandpre.h
/usr/include/arkode/arkode_bbdpre.h
/usr/include/arkode/arkode_butcher.h
/usr/include/arkode/arkode_butcher_dirk.h
/usr/include/arkode/arkode_butcher_erk.h
/usr/include/arkode/arkode_erkstep.h
/usr/include/arkode/arkode_ls.h
/usr/include/arkode/arkode_mristep.h
/usr/include/cvode
/usr/include/cvode/cvode.h
/usr/include/cvode/cvode_bandpre.h
/usr/include/cvode/cvode_bbdpre.h
/usr/include/cvode/cvode_diag.h
/usr/include/cvode/cvode_direct.h
/usr/include/cvode/cvode_ls.h
/usr/include/cvode/cvode_proj.h
/usr/include/cvode/cvode_spils.h
/usr/include/cvodes
/usr/include/cvodes/cvodes.h
/usr/include/cvodes/cvodes_bandpre.h
/usr/include/cvodes/cvodes_bbdpre.h
/usr/include/cvodes/cvodes_diag.h
/usr/include/cvodes/cvodes_direct.h
/usr/include/cvodes/cvodes_ls.h
/usr/include/cvodes/cvodes_spils.h
/usr/include/ida
/usr/include/ida/ida.h
/usr/include/ida/ida_bbdpre.h
/usr/include/ida/ida_direct.h
/usr/include/ida/ida_ls.h
/usr/include/ida/ida_spils.h
/usr/include/idas
/usr/include/idas/idas.h
/usr/include/idas/idas_bbdpre.h
/usr/include/idas/idas_direct.h
/usr/include/idas/idas_ls.h
/usr/include/idas/idas_spils.h
/usr/include/kinsol
/usr/include/kinsol/kinsol.h
/usr/include/kinsol/kinsol_bbdpre.h
/usr/include/kinsol/kinsol_direct.h
/usr/include/kinsol/kinsol_ls.h
/usr/include/kinsol/kinsol_spils.h
/usr/include/nvector
/usr/include/nvector/nvector_manyvector.h
/usr/include/nvector/nvector_mpimanyvector.h
/usr/include/nvector/nvector_mpiplusx.h
/usr/include/nvector/nvector_openmp.h
/usr/include/nvector/nvector_serial.h
/usr/include/sundials
/usr/include/sundials/sundials_band.h
/usr/include/sundials/sundials_config.h
/usr/include/sundials/sundials_dense.h
/usr/include/sundials/sundials_direct.h
/usr/include/sundials/sundials_export.h
/usr/include/sundials/sundials_fconfig.h
/usr/include/sundials/sundials_fnvector.h
/usr/include/sundials/sundials_futils.h
/usr/include/sundials/sundials_iterative.h
/usr/include/sundials/sundials_linearsolver.h
/usr/include/sundials/sundials_math.h
/usr/include/sundials/sundials_matrix.h
/usr/include/sundials/sundials_memory.h
/usr/include/sundials/sundials_mpi_types.h
/usr/include/sundials/sundials_nonlinearsolver.h
/usr/include/sundials/sundials_nvector.h
/usr/include/sundials/sundials_types.h
/usr/include/sundials/sundials_version.h
/usr/include/sunlinsol
/usr/include/sunlinsol/sunlinsol_band.h
/usr/include/sunlinsol/sunlinsol_dense.h
/usr/include/sunlinsol/sunlinsol_klu.h
/usr/include/sunlinsol/sunlinsol_pcg.h
/usr/include/sunlinsol/sunlinsol_spbcgs.h
/usr/include/sunlinsol/sunlinsol_spfgmr.h
/usr/include/sunlinsol/sunlinsol_spgmr.h
/usr/include/sunlinsol/sunlinsol_sptfqmr.h
/usr/include/sunmatrix
/usr/include/sunmatrix/sunmatrix_band.h
/usr/include/sunmatrix/sunmatrix_dense.h
/usr/include/sunmatrix/sunmatrix_sparse.h
/usr/include/sunnonlinsol
/usr/include/sunnonlinsol/sunnonlinsol_fixedpoint.h
/usr/include/sunnonlinsol/sunnonlinsol_newton.h
/usr/lib/.build-id
/usr/lib/.build-id/13
/usr/lib/.build-id/13/2d031ddfc8240036b1e6426980b21458478773
/usr/lib/.build-id/e6
/usr/lib/.build-id/e6/f9477d1913a7a5dccdb92a63899c90590853e0
/usr/lib64/cmake/sundials
/usr/lib64/cmake/sundials/SUNDIALSConfig.cmake
/usr/lib64/cmake/sundials/SUNDIALSConfigVersion.cmake
/usr/lib64/cmake/sundials/SUNDIALSTargets-release.cmake
/usr/lib64/cmake/sundials/SUNDIALSTargets.cmake
/usr/lib64/gfortran/modules/sundials
/usr/lib64/gfortran/modules/sundials/farkode_arkstep_mod.mod
/usr/lib64/gfortran/modules/sundials/farkode_erkstep_mod.mod
/usr/lib64/gfortran/modules/sundials/farkode_mod.mod
/usr/lib64/gfortran/modules/sundials/farkode_mristep_mod.mod
/usr/lib64/gfortran/modules/sundials/fcvode_mod.mod
/usr/lib64/gfortran/modules/sundials/fcvodes_mod.mod
/usr/lib64/gfortran/modules/sundials/fida_mod.mod
/usr/lib64/gfortran/modules/sundials/fidas_mod.mod
/usr/lib64/gfortran/modules/sundials/fkinsol_mod.mod
/usr/lib64/gfortran/modules/sundials/fnvector_manyvector_mod.mod
/usr/lib64/gfortran/modules/sundials/fnvector_openmp_mod.mod
/usr/lib64/gfortran/modules/sundials/fnvector_serial_mod.mod
/usr/lib64/gfortran/modules/sundials/fsundials_futils_mod.mod
/usr/lib64/gfortran/modules/sundials/fsundials_linearsolver_mod.mod
/usr/lib64/gfortran/modules/sundials/fsundials_matrix_mod.mod
/usr/lib64/gfortran/modules/sundials/fsundials_nonlinearsolver_mod.mod
/usr/lib64/gfortran/modules/sundials/fsundials_nvector_mod.mod
/usr/lib64/gfortran/modules/sundials/fsundials_types_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_band_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_dense_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_klu_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_pcg_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_spbcgs_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_spfgmr_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_spgmr_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunlinsol_sptfqmr_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunmatrix_band_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunmatrix_dense_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunmatrix_sparse_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunnonlinsol_fixedpoint_mod.mod
/usr/lib64/gfortran/modules/sundials/fsunnonlinsol_newton_mod.mod
/usr/lib64/libsundials_arkode.a
/usr/lib64/libsundials_arkode.so
/usr/lib64/libsundials_cvode.a
/usr/lib64/libsundials_cvode.so
/usr/lib64/libsundials_cvodes.a
/usr/lib64/libsundials_cvodes.so
/usr/lib64/libsundials_farkode.a
/usr/lib64/libsundials_farkode_mod.a
/usr/lib64/libsundials_farkode_mod.so
/usr/lib64/libsundials_fcvode.a
/usr/lib64/libsundials_fcvode_mod.a
/usr/lib64/libsundials_fcvode_mod.so
/usr/lib64/libsundials_fcvodes_mod.a
/usr/lib64/libsundials_fcvodes_mod.so
/usr/lib64/libsundials_fida.a
/usr/lib64/libsundials_fida_mod.a
/usr/lib64/libsundials_fida_mod.so
/usr/lib64/libsundials_fidas_mod.a
/usr/lib64/libsundials_fidas_mod.so
/usr/lib64/libsundials_fkinsol.a
/usr/lib64/libsundials_fkinsol_mod.a
/usr/lib64/libsundials_fkinsol_mod.so
/usr/lib64/libsundials_fnvecmanyvector_mod.a
/usr/lib64/libsundials_fnvecmanyvector_mod.so
/usr/lib64/libsundials_fnvecopenmp.a
/usr/lib64/libsundials_fnvecopenmp.so
/usr/lib64/libsundials_fnvecopenmp_mod.a
/usr/lib64/libsundials_fnvecopenmp_mod.so
/usr/lib64/libsundials_fnvecserial.a
/usr/lib64/libsundials_fnvecserial.so
/usr/lib64/libsundials_fnvecserial_mod.a
/usr/lib64/libsundials_fnvecserial_mod.so
/usr/lib64/libsundials_fsunlinsolband.a
/usr/lib64/libsundials_fsunlinsolband.so
/usr/lib64/libsundials_fsunlinsolband_mod.a
/usr/lib64/libsundials_fsunlinsolband_mod.so
/usr/lib64/libsundials_fsunlinsoldense.a
/usr/lib64/libsundials_fsunlinsoldense.so
/usr/lib64/libsundials_fsunlinsoldense_mod.a
/usr/lib64/libsundials_fsunlinsoldense_mod.so
/usr/lib64/libsundials_fsunlinsolklu.a
/usr/lib64/libsundials_fsunlinsolklu.so
/usr/lib64/libsundials_fsunlinsolklu_mod.a
/usr/lib64/libsundials_fsunlinsolklu_mod.so
/usr/lib64/libsundials_fsunlinsolpcg.a
/usr/lib64/libsundials_fsunlinsolpcg.so
/usr/lib64/libsundials_fsunlinsolpcg_mod.a
/usr/lib64/libsundials_fsunlinsolpcg_mod.so
/usr/lib64/libsundials_fsunlinsolspbcgs.a
/usr/lib64/libsundials_fsunlinsolspbcgs.so
/usr/lib64/libsundials_fsunlinsolspbcgs_mod.a
/usr/lib64/libsundials_fsunlinsolspbcgs_mod.so
/usr/lib64/libsundials_fsunlinsolspfgmr.a
/usr/lib64/libsundials_fsunlinsolspfgmr.so
/usr/lib64/libsundials_fsunlinsolspfgmr_mod.a
/usr/lib64/libsundials_fsunlinsolspfgmr_mod.so
/usr/lib64/libsundials_fsunlinsolspgmr.a
/usr/lib64/libsundials_fsunlinsolspgmr.so
/usr/lib64/libsundials_fsunlinsolspgmr_mod.a
/usr/lib64/libsundials_fsunlinsolspgmr_mod.so
/usr/lib64/libsundials_fsunlinsolsptfqmr.a
/usr/lib64/libsundials_fsunlinsolsptfqmr.so
/usr/lib64/libsundials_fsunlinsolsptfqmr_mod.a
/usr/lib64/libsundials_fsunlinsolsptfqmr_mod.so
/usr/lib64/libsundials_fsunmatrixband.a
/usr/lib64/libsundials_fsunmatrixband.so
/usr/lib64/libsundials_fsunmatrixband_mod.a
/usr/lib64/libsundials_fsunmatrixband_mod.so
/usr/lib64/libsundials_fsunmatrixdense.a
/usr/lib64/libsundials_fsunmatrixdense.so
/usr/lib64/libsundials_fsunmatrixdense_mod.a
/usr/lib64/libsundials_fsunmatrixdense_mod.so
/usr/lib64/libsundials_fsunmatrixsparse.a
/usr/lib64/libsundials_fsunmatrixsparse.so
/usr/lib64/libsundials_fsunmatrixsparse_mod.a
/usr/lib64/libsundials_fsunmatrixsparse_mod.so
/usr/lib64/libsundials_fsunnonlinsolfixedpoint.a
/usr/lib64/libsundials_fsunnonlinsolfixedpoint.so
/usr/lib64/libsundials_fsunnonlinsolfixedpoint_mod.a
/usr/lib64/libsundials_fsunnonlinsolfixedpoint_mod.so
/usr/lib64/libsundials_fsunnonlinsolnewton.a
/usr/lib64/libsundials_fsunnonlinsolnewton.so
/usr/lib64/libsundials_fsunnonlinsolnewton_mod.a
/usr/lib64/libsundials_fsunnonlinsolnewton_mod.so
/usr/lib64/libsundials_generic.a
/usr/lib64/libsundials_generic.so
/usr/lib64/libsundials_ida.a
/usr/lib64/libsundials_ida.so
/usr/lib64/libsundials_idas.a
/usr/lib64/libsundials_idas.so
/usr/lib64/libsundials_kinsol.a
/usr/lib64/libsundials_kinsol.so
/usr/lib64/libsundials_nvecmanyvector.a
/usr/lib64/libsundials_nvecmanyvector.so
/usr/lib64/libsundials_nvecopenmp.a
/usr/lib64/libsundials_nvecopenmp.so
/usr/lib64/libsundials_nvecserial.a
/usr/lib64/libsundials_nvecserial.so
/usr/lib64/libsundials_sunlinsolband.a
/usr/lib64/libsundials_sunlinsolband.so
/usr/lib64/libsundials_sunlinsoldense.a
/usr/lib64/libsundials_sunlinsoldense.so
/usr/lib64/libsundials_sunlinsolklu.a
/usr/lib64/libsundials_sunlinsolklu.so
/usr/lib64/libsundials_sunlinsolpcg.a
/usr/lib64/libsundials_sunlinsolpcg.so
/usr/lib64/libsundials_sunlinsolspbcgs.a
/usr/lib64/libsundials_sunlinsolspbcgs.so
/usr/lib64/libsundials_sunlinsolspfgmr.a
/usr/lib64/libsundials_sunlinsolspfgmr.so
/usr/lib64/libsundials_sunlinsolspgmr.a
/usr/lib64/libsundials_sunlinsolspgmr.so
/usr/lib64/libsundials_sunlinsolsptfqmr.a
/usr/lib64/libsundials_sunlinsolsptfqmr.so
/usr/lib64/libsundials_sunmatrixband.a
/usr/lib64/libsundials_sunmatrixband.so
/usr/lib64/libsundials_sunmatrixdense.a
/usr/lib64/libsundials_sunmatrixdense.so
/usr/lib64/libsundials_sunmatrixsparse.a
/usr/lib64/libsundials_sunmatrixsparse.so
/usr/lib64/libsundials_sunnonlinsolfixedpoint.a
/usr/lib64/libsundials_sunnonlinsolfixedpoint.so
/usr/lib64/libsundials_sunnonlinsolnewton.a
/usr/lib64/libsundials_sunnonlinsolnewton.so
Dear sagitter,
We've checked the code and looks like it requires more implementation changes and testing than simply changing the function call name and inputs. We've added it to our fixing list for the next release and will keep this issue open until then. In the meantime, please use the bundled package instead.
hi @WeiliangChenOIST , has their been any updates here please, anything we can help with?
Dear @sanjayankur31, this was left over due to priority issue, we've assigned member to revisit this issue and hopefully provide a fix in the next release.
Thanks very much. In the meantime, i see that sundials v7 was just released too, so maybe that's worth targeting:
We plan to support SUNDIALS library up to version 6 (included) to be compatible with all current Fedora releases
That'll be great, thank you. (I've not seen a plan to update to 7.x in Fedora yet)
Dear @sanjayankur31, we have fixed this issue and now support up to Sundials 6.7 in our planned 5.0 release, which is already available on branch https://github.com/CNS-OIST/STEPS/tree/5.0.1 It would be very helpful to us if you are able to confirm whether this works for you now, thank you.
Thanks for the quick update @iahepburn . I'll build from that branch and report back ASAP.
Is there any update from your end, @sanjayankur31 ? Can we close the issue?
it's still a work in progress I'm afraid. We need to include the sandia-omega-h library in the repos before we can update to 5.x for steps:
https://src.fedoraproject.org/rpms/python-steps/pull-request/6
I get:
CMake Error at src/steps/geom/dist/CMakeLists.txt:7 (target_link_libraries):
Target "stepsgeomdist" links to:
MPI::MPI_CXX
but the target was not found. Possible reasons include:
* There is a typo in the target name.
* A find_package call is missing for an IMPORTED target.
* An ALIAS target is missing.
So, quick question:
Should this not be in a conditional that checks if MPI is available?
https://github.com/CNS-OIST/STEPS/blob/5.0.1/src/steps/geom/dist/CMakeLists.txt#L7
Dear @sanjayankur31, thank you for reporting that issue. We have added a more specific error message when attempting to build with the distributed solver but without MPI, as seems to be the case here. If MPI is not available, you can disable the distributed solver with -DSTEPS_USE_DIST_MESH=OFF
Hi all.
Please, could you make
STEPS-3.6.0
compatible with recentSundials-5.7.0
(if possible)?:Regards.