chempy icon indicating copy to clipboard operation
chempy copied to clipboard

Installation Errors

Open timhockswender opened this issue 2 years ago • 2 comments

Working on windows, pip install for pygsodeiv2 and pykinsol leads to failures due to package issues. Similar to older issue on pip install.

Any chance that these could be modified to be installed via conda?

Does Sundials need to be installed outside of python?

Does python-Sundials work for chempy?

I would like to learn this system better and would appreciate any help. Thanks. Tim.

timhockswender avatar Nov 09 '22 15:11 timhockswender

Hi Tim,

It's all a bit of a moving target unfortunately. I'm worried that pykinsol and pycvodes probably won't compile with latest Sundials (they've made breaking changes between 5->6 I believe). Those projects should ideally be updated to support latest release. But I will not be able to find the time to do so myself in the foreseeable future.

And I'm not sure GSL even supports Windows.

On Windows your best bet is to use subsystem for Linux (WSL2) and then either install directly there, or build a container (using either podman or docker). Here's a Containerfile which passes all of ChemPy's tests for Python 3.11:

FROM docker.io/python:3.11

RUN \
    apt-get update \
    && apt-get --quiet --assume-yes --no-install-recommends install \
        locales sudo tzdata apt-transport-https ca-certificates graphviz texlive-latex-recommended \
    && echo "LC_ALL=en_US.UTF-8" >> /etc/environment \
    && echo "en_US.UTF-8 UTF-8"  >> /etc/locale.gen \
    && echo "LANG=en_US.UTF-8"    > /etc/locale.conf \
    && locale-gen en_US.UTF-8 \
    && update-ca-certificates \    
    && apt-get --quiet --assume-yes dist-upgrade \
    && apt-get --quiet --assume-yes --no-install-recommends install \
        libsundials-dev libgsl-dev libboost-math-dev \
    && rm -rf /tmp/* /var/tmp/*

RUN \
    python3 -m pip install --upgrade cython pip chempy pytest pygslodeiv2 pyodeint pycodeexport appdirs \
    && CPATH=/usr/include/suitesparse/ PYCVODES_NO_LAPACK=1 python3 -m pip install pycvodes \
    && python3 -m pytest --pyargs pycvodes pygslodeiv2 pyodeint sym symengine finitediff block_diag_ilu \
    && rm -rf /tmp/*

RUN \
    python3 -m pytest -ra --pyargs pyodesys chempy

bjodah avatar Nov 09 '22 16:11 bjodah

Hola! Soy nuevo contribuyendo en proyectos open source, me gustaria colaborar en este. Estuve viendo las issues y la guia de contribucion pero seria de utilidad una mejor ayuda o guia, gracias!

Hello! I am new to contributing to open source projects, I would like to collaborate on this one. I was looking at the issues and the contribution guide but better help or guidance would be useful, thank you!

skarkloff avatar Aug 05 '24 21:08 skarkloff