bmcage / odes

The ODES scikit for ordinary differential and algebraic equations, an extension to scipy
https://scikits-odes.readthedocs.io/
Other
122 stars 44 forks source link

pip install scikits.odes not working #43

Closed milesabarr closed 5 years ago

milesabarr commented 7 years ago

I am trying to install and use scikits.odes through pip on a Windows machine, but it is not working. The final error I get in the command prompt is:

Command "c:\users\miles\anaconda2\python.exe -u -c "import setuptools, tokenize;file='c:\users\miles\appdata\local\temp\pip-build-sekgu8\scikits.odes\setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record c:\users\miles\appdata\local\temp\pip-sr8fq6-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in c:\users\miles\appdata\local\temp\pip-build-sekgu8\scikits.odes\

I also got this error:

Failed building wheel for scikits.odes

Any ideas what the problem could be? I got assimulo up and running fine. I am running into a problem where my model is very slow, and I wanted to see if scikits.odes has any potential to improve the simulation speed.

Miles

aragilar commented 7 years ago

Can you provide the whole backtrace?

milesabarr commented 7 years ago
C:\Users\miles>pip install scikits.odes
Collecting scikits.odes
  Using cached scikits.odes-2.2.1.tar.gz
Requirement already satisfied: scipy in c:\users\miles\anaconda2\lib\site-packages (from scikits.odes)
Requirement already satisfied: enum34 in c:\users\miles\anaconda2\lib\site-packages (from scikits.odes)
Building wheels for collected packages: scikits.odes
  Running setup.py bdist_wheel for scikits.odes ... error
  Complete output from command c:\users\miles\anaconda2\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\miles\\appdata\\local\\temp\\pip-build-xjjthd\\scikits.odes\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d c:\users\miles\appdata\local\temp\tmpfswiujpip-wheel- --python-tag cp27:
  =============================================
  parent package is scikits
  top path is c:\users\miles\appdata\local\temp\pip-build-xjjthd\scikits.odes
  =============================================
  pkgconfig module not found, using preset paths
  lapack_opt_info:
  openblas_lapack_info:
    libraries openblas not found in ['c:\\users\\miles\\anaconda2\\lib', 'C:\\', 'c:\\users\\miles\\anaconda2\\libs']
    NOT AVAILABLE

  lapack_mkl_info:
    libraries mkl_rt not found in ['c:\\users\\miles\\anaconda2\\lib', 'C:\\', 'c:\\users\\miles\\anaconda2\\libs']
    NOT AVAILABLE

  atlas_3_10_threads_info:
  Setting PTATLAS=ATLAS
  C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:639: UserWarning: Specified path C:\projects\numpy-wheels\windows-wheel-builder\atlas-builds\atlas-3.10.1-sse2-32\lib is invalid.
    warnings.warn('Specified path %s is invalid.' % d)
  <class 'numpy.distutils.system_info.atlas_3_10_threads_info'>
    NOT AVAILABLE

  atlas_3_10_info:
  <class 'numpy.distutils.system_info.atlas_3_10_info'>
    NOT AVAILABLE

  atlas_threads_info:
  Setting PTATLAS=ATLAS
  <class 'numpy.distutils.system_info.atlas_threads_info'>
    NOT AVAILABLE

  atlas_info:
  <class 'numpy.distutils.system_info.atlas_info'>
    NOT AVAILABLE

  C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:1532: UserWarning:
      Atlas (http://math-atlas.sourceforge.net/) libraries not found.
      Directories to search for the libraries can be specified in the
      numpy/distutils/site.cfg file (section [atlas]) or by setting
      the ATLAS environment variable.
    warnings.warn(AtlasNotFoundError.__doc__)
  lapack_info:
    libraries lapack not found in ['c:\\users\\miles\\anaconda2\\lib', 'C:\\', 'c:\\users\\miles\\anaconda2\\libs']
    NOT AVAILABLE

  C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:1543: UserWarning:
      Lapack (http://www.netlib.org/lapack/) libraries not found.
      Directories to search for the libraries can be specified in the
      numpy/distutils/site.cfg file (section [lapack]) or by setting
      the LAPACK environment variable.
    warnings.warn(LapackNotFoundError.__doc__)
  lapack_src_info:
    NOT AVAILABLE

  C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:1546: UserWarning:
      Lapack (http://www.netlib.org/lapack/) sources not found.
      Directories to search for the sources can be specified in the
      numpy/distutils/site.cfg file (section [lapack_src]) or by setting
      the LAPACK_SRC environment variable.
    warnings.warn(LapackSrcNotFoundError.__doc__)
  LAPACK was not detected, disabling sundials solvers
  =============================================
  parent package is scikits.odes
  top path is c:\users\miles\appdata\local\temp\pip-build-xjjthd\scikits.odes
  =============================================
  Appending scikits.odes.sundials configuration to scikits.odes
  Ignoring attempt to set 'name' (from 'scikits.odes' to 'scikits.odes.sundials')
  Warning: Assuming default configuration (scikits\odes\tests/{setup_tests,setup}.py was not found)Appending scikits.odes.tests configuration to scikits.odes
  Ignoring attempt to set 'name' (from 'scikits.odes' to 'scikits.odes.tests')
  Appending scikits.odes configuration to
  Ignoring attempt to set 'name' (from '' to 'scikits.odes')
  running bdist_wheel
  running build
  running config_cc
  unifing config_cc, config, build_clib, build_ext, build commands --compiler options
  running config_fc
  unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options
  running build_src
  build_src
  building library "daepack" sources
  building extension "scikits.odes.ddaspk" sources
  f2py options: []
    adding 'build\src.win32-2.7\fortranobject.c' to sources.
    adding 'build\src.win32-2.7' to include_dirs.
  building extension "scikits.odes.lsodi" sources
  f2py options: []
    adding 'build\src.win32-2.7\fortranobject.c' to sources.
    adding 'build\src.win32-2.7' to include_dirs.
  building data_files sources
  build_src: building npy-pkg config files
  running build_py
  creating build\lib.win32-2.7
  creating build\lib.win32-2.7\scikits
  copying scikits\__init__.py -> build\lib.win32-2.7\scikits
  creating build\lib.win32-2.7\scikits\odes
  copying scikits\odes\dae.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\ddaspkint.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\dopri5.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\info.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\lsodiint.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\ode.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\setup.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\_build.py -> build\lib.win32-2.7\scikits\odes
  copying scikits\odes\__init__.py -> build\lib.win32-2.7\scikits\odes
  creating build\lib.win32-2.7\scikits\odes\sundials
  copying scikits\odes\sundials\setup-tine.py -> build\lib.win32-2.7\scikits\odes\sundials
  copying scikits\odes\sundials\setup.py -> build\lib.win32-2.7\scikits\odes\sundials
  copying scikits\odes\sundials\__init__.py -> build\lib.win32-2.7\scikits\odes\sundials
  creating build\lib.win32-2.7\scikits\odes\tests
  copying scikits\odes\tests\test_dae.py -> build\lib.win32-2.7\scikits\odes\tests
  copying scikits\odes\tests\test_dop.py -> build\lib.win32-2.7\scikits\odes\tests
  copying scikits\odes\tests\test_on_funcs.py -> build\lib.win32-2.7\scikits\odes\tests
  copying scikits\odes\tests\test_on_funcs_ida.py -> build\lib.win32-2.7\scikits\odes\tests
  copying scikits\odes\tests\__init__.py -> build\lib.win32-2.7\scikits\odes\tests
  running build_clib
  customize MSVCCompiler
  customize MSVCCompiler using build_clib
  customize GnuFCompiler
  Could not locate executable g77
  Could not locate executable f77
  customize IntelVisualFCompiler
  Could not locate executable ifort
  Could not locate executable ifl
  customize AbsoftFCompiler
  Could not locate executable f90
  customize CompaqVisualFCompiler
  Could not locate executable DF
  customize IntelItaniumVisualFCompiler
  Could not locate executable efl
  customize Gnu95FCompiler
  Could not locate executable gfortran
  Could not locate executable f95
  customize G95FCompiler
  Could not locate executable g95
  customize IntelEM64VisualFCompiler
  customize IntelEM64TFCompiler
  Could not locate executable efort
  Could not locate executable efc
  don't know how to compile Fortran code on platform 'nt'
  building 'daepack' library
  error: library daepack has Fortran sources but no Fortran compiler found

  ----------------------------------------
  Failed building wheel for scikits.odes
  Running setup.py clean for scikits.odes
Failed to build scikits.odes
Installing collected packages: scikits.odes
  Running setup.py install for scikits.odes ... error
    Complete output from command c:\users\miles\anaconda2\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\miles\\appdata\\local\\temp\\pip-build-xjjthd\\scikits.odes\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record c:\users\miles\appdata\local\temp\pip-zhf53w-record\install-record.txt --single-version-externally-managed --compile:
    =============================================
    parent package is scikits
    top path is c:\users\miles\appdata\local\temp\pip-build-xjjthd\scikits.odes
    =============================================
    pkgconfig module not found, using preset paths
    lapack_opt_info:
    openblas_lapack_info:
      libraries openblas not found in ['c:\\users\\miles\\anaconda2\\lib', 'C:\\', 'c:\\users\\miles\\anaconda2\\libs']
      NOT AVAILABLE

    lapack_mkl_info:
      libraries mkl_rt not found in ['c:\\users\\miles\\anaconda2\\lib', 'C:\\', 'c:\\users\\miles\\anaconda2\\libs']
      NOT AVAILABLE

    atlas_3_10_threads_info:
    Setting PTATLAS=ATLAS
    C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:639: UserWarning: Specified path C:\projects\numpy-wheels\windows-wheel-builder\atlas-builds\atlas-3.10.1-sse2-32\lib is invalid.
      warnings.warn('Specified path %s is invalid.' % d)
    <class 'numpy.distutils.system_info.atlas_3_10_threads_info'>
      NOT AVAILABLE

    atlas_3_10_info:
    <class 'numpy.distutils.system_info.atlas_3_10_info'>
      NOT AVAILABLE

    atlas_threads_info:
    Setting PTATLAS=ATLAS
    <class 'numpy.distutils.system_info.atlas_threads_info'>
      NOT AVAILABLE

    atlas_info:
    <class 'numpy.distutils.system_info.atlas_info'>
      NOT AVAILABLE

    C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:1532: UserWarning:
        Atlas (http://math-atlas.sourceforge.net/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [atlas]) or by setting
        the ATLAS environment variable.
      warnings.warn(AtlasNotFoundError.__doc__)
    lapack_info:
      libraries lapack not found in ['c:\\users\\miles\\anaconda2\\lib', 'C:\\', 'c:\\users\\miles\\anaconda2\\libs']
      NOT AVAILABLE

    C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:1543: UserWarning:
        Lapack (http://www.netlib.org/lapack/) libraries not found.
        Directories to search for the libraries can be specified in the
        numpy/distutils/site.cfg file (section [lapack]) or by setting
        the LAPACK environment variable.
      warnings.warn(LapackNotFoundError.__doc__)
    lapack_src_info:
      NOT AVAILABLE

    C:\Users\miles\AppData\Roaming\Python\Python27\site-packages\numpy\distutils\system_info.py:1546: UserWarning:
        Lapack (http://www.netlib.org/lapack/) sources not found.
        Directories to search for the sources can be specified in the
        numpy/distutils/site.cfg file (section [lapack_src]) or by setting
        the LAPACK_SRC environment variable.
      warnings.warn(LapackSrcNotFoundError.__doc__)
    LAPACK was not detected, disabling sundials solvers
    =============================================
    parent package is scikits.odes
    top path is c:\users\miles\appdata\local\temp\pip-build-xjjthd\scikits.odes
    =============================================
    Appending scikits.odes.sundials configuration to scikits.odes
    Ignoring attempt to set 'name' (from 'scikits.odes' to 'scikits.odes.sundials')
    Warning: Assuming default configuration (scikits\odes\tests/{setup_tests,setup}.py was not found)Appending scikits.odes.tests configuration to scikits.odes
    Ignoring attempt to set 'name' (from 'scikits.odes' to 'scikits.odes.tests')
    Appending scikits.odes configuration to
    Ignoring attempt to set 'name' (from '' to 'scikits.odes')
    running install
    running build
    running config_cc
    unifing config_cc, config, build_clib, build_ext, build commands --compiler options
    running config_fc
    unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options
    running build_src
    build_src
    building library "daepack" sources
    building extension "scikits.odes.ddaspk" sources
    f2py options: []
      adding 'build\src.win32-2.7\fortranobject.c' to sources.
      adding 'build\src.win32-2.7' to include_dirs.
    building extension "scikits.odes.lsodi" sources
    f2py options: []
      adding 'build\src.win32-2.7\fortranobject.c' to sources.
      adding 'build\src.win32-2.7' to include_dirs.
    building data_files sources
    build_src: building npy-pkg config files
    running build_py
    creating build\lib.win32-2.7
    creating build\lib.win32-2.7\scikits
    copying scikits\__init__.py -> build\lib.win32-2.7\scikits
    creating build\lib.win32-2.7\scikits\odes
    copying scikits\odes\dae.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\ddaspkint.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\dopri5.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\info.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\lsodiint.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\ode.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\setup.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\_build.py -> build\lib.win32-2.7\scikits\odes
    copying scikits\odes\__init__.py -> build\lib.win32-2.7\scikits\odes
    creating build\lib.win32-2.7\scikits\odes\sundials
    copying scikits\odes\sundials\setup-tine.py -> build\lib.win32-2.7\scikits\odes\sundials
    copying scikits\odes\sundials\setup.py -> build\lib.win32-2.7\scikits\odes\sundials
    copying scikits\odes\sundials\__init__.py -> build\lib.win32-2.7\scikits\odes\sundials
    creating build\lib.win32-2.7\scikits\odes\tests
    copying scikits\odes\tests\test_dae.py -> build\lib.win32-2.7\scikits\odes\tests
    copying scikits\odes\tests\test_dop.py -> build\lib.win32-2.7\scikits\odes\tests
    copying scikits\odes\tests\test_on_funcs.py -> build\lib.win32-2.7\scikits\odes\tests
    copying scikits\odes\tests\test_on_funcs_ida.py -> build\lib.win32-2.7\scikits\odes\tests
    copying scikits\odes\tests\__init__.py -> build\lib.win32-2.7\scikits\odes\tests
    running build_clib
    customize MSVCCompiler
    customize MSVCCompiler using build_clib
    customize GnuFCompiler
    Could not locate executable g77
    Could not locate executable f77
    customize IntelVisualFCompiler
    Could not locate executable ifort
    Could not locate executable ifl
    customize AbsoftFCompiler
    Could not locate executable f90
    customize CompaqVisualFCompiler
    Could not locate executable DF
    customize IntelItaniumVisualFCompiler
    Could not locate executable efl
    customize Gnu95FCompiler
    Could not locate executable gfortran
    Could not locate executable f95
    customize G95FCompiler
    Could not locate executable g95
    customize IntelEM64VisualFCompiler
    customize IntelEM64TFCompiler
    Could not locate executable efort
    Could not locate executable efc
    don't know how to compile Fortran code on platform 'nt'
    building 'daepack' library
    error: library daepack has Fortran sources but no Fortran compiler found

    ----------------------------------------
Command "c:\users\miles\anaconda2\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\miles\\appdata\\local\\temp\\pip-build-xjjthd\\scikits.odes\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record c:\users\miles\appdata\local\temp\pip-zhf53w-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in c:\users\miles\appdata\local\temp\pip-build-xjjthd\scikits.odes\
aragilar commented 7 years ago

You appear to be missing a number of things needed to build/run the solvers:

Do you have the sundials solvers installed? You'll need to install those before trying to install scikits.odes.

bmcage commented 7 years ago

It should be possible to make odes work on windows, though the setup might be complex. As aragilar says, start with installing sundials and see how that goes. Without sundials, odes has little benefit over scipy. Or linux in virtualbox if your code is cross platform.

milesabarr commented 7 years ago

Ok, I did try installing sundials and it still didn't seem to be working, likely because the installation is confusing to me and I probably did it incorrectly. Let me try the process again.

hope-yao commented 7 years ago

I also ran into similar problems. It seems that ATLAS is missing, which could be found here:

http://www.ibm.com/support/knowledgecenter/linuxonibm/liaai.hpcrh/installmath.htm

sejabs commented 6 years ago

You can use Christoph's scikits.odes package in the great website . It shows the binary has integrated with sundials files. Or you can try conda enviroment, install sundials from conda -c conda-forge, and pip install scikots.odes. The method has been discussed in the thread.

gkend commented 6 years ago

I'm also trying to install your package in virtualenvs.

$ pip install scikits.ode

Get a similar Error on ArchLinux System:

Command "/home/user/.virtualenvs/uni/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-9wezf2qy/scikits.odes/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-y44rhi0l-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/user/.virtualenvs/uni/include/site/python3.6/scikits.odes" failed with error code 1 in /tmp/pip-build-9wezf2qy/scikits.odes/

I think the sundials installation is not found (see log file). Although already i installed sundials with -DLAPACK_ENABLE=ON and set $ SUNDIALS_INST=/usr/include/sundials before i run the installation.

In the logfile is mention that sundials/sundials_lapack.h is not found.

Is sundials-3.1.0-1 not supported? (So i have to downgrade the sundials?)

Here is the full logfile log.txt

thx

aragilar commented 6 years ago

@gkend You probably want to try with the latest master.

gkend commented 6 years ago

@aragilar I get the latest now but failed again. log.txt

aragilar commented 6 years ago

OK, I guess it doesn't work (the tests have been running on 2.7). You could try deleting the line at https://github.com/bmcage/odes/blob/master/scikits/odes/sundials/c_sundials.pxd#L109 (and the pass line).

gkend commented 6 years ago

@aragilar okay, then i have to downgrade sundials to 2.7 and try again. I tried to delete this line but it does'nt work, here is the log.txt.

gkend commented 6 years ago

@aragilar it works with sundails 2.7 (with the PKGBUILD) Thx for your help

mkrishan commented 6 years ago

Issue: The above comments doesn't solve my problem "pip install scikits.odes not working". Please look at the backtrace. log.txt

bmcage commented 6 years ago

@manya7 in the log I see:
pkgconfig module not found, using preset paths

No path for SUNDIALS installation set by $SUNDIALS_INST.

then the error at end:

In file included from scikits/odes/sundials/common_defs.c:492:0: scikits/odes/sundials/sundials_auxiliary/sundials_auxiliary.c:4:38: fatal error:
sundials/sundials_spfgmr.h: No such file or directory

So, set the place where sundials is installed on your system. To do this, first, we just released 2.3.2 to pypi, so use that. Then follow: http://scikits-odes.readthedocs.io/en/latest/installation.html

bmcage commented 5 years ago

No further information received. If still issues, try with version 2.4.0 of odes

JNaj commented 5 years ago

Hello, I also have difficulties installing scikits.odes. I'm on Mac 10.14.1, using python 3. gfortran and Sundials 3.1.1 are installed. Thanks in advance for your help, the complete backtrace is below ... install_odes.pdf

bmcage commented 5 years ago

@JNaj You should open your own issue report, not hijack an issue that is not related! You say python3 here, but in your report I see:

 /Users/najnudel/anaconda2/envs/test/bin/python /Users/najnudel/anaconda2/envs/test/lib/python3.7/site-packages/pip/_vendor/pep517/

That seems like python2 is used, or is that python python 3? Anyway, open new issue for this.

bmcage commented 5 years ago

@JNaj I should not reply furhter in this issue, but your issue is probably Mac #105 Patch given there to work around that.

JNaj commented 5 years ago

Ok thanks, I'll have a look

Le ven. 23 août 2019 à 4:41 PM, Benny notifications@github.com a écrit :

@JNaj https://github.com/JNaj I should not reply furhter in this issue, but your issue is probably Mac #105 https://github.com/bmcage/odes/pull/105 Patch given there to work around that.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/bmcage/odes/issues/43?email_source=notifications&email_token=AICPNOQBQMIRP2SAHUMVUZ3QF7ZKTA5CNFSM4C3QAGL2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5ANCFY#issuecomment-524341527, or mute the thread https://github.com/notifications/unsubscribe-auth/AICPNOWW4MKR6JLATHSQQDTQF7ZKTANCNFSM4C3QAGLQ .