Install Issues on Conda

113 views
Skip to first unread message

Qian Cao

unread,
Mar 28, 2022, 5:39:47 PM3/28/22
to ProjectChrono
Hi,

I've been trying to install PyChrono in a new conda environment recently and I've been running into some issues. Here is what I did:

1. Set up a clean conda environment with some standard packages. I ran conda env create -f environment_main2_20220323.yml, where the .yml file consists of:

name: main2
dependencies:
  - python=3.8
  - anaconda
  - pip
  - pip:
    - pynrrd
    - pydicom
    - h5py
    - nibabel
    - meshio
    - trimesh
    - tetgen
    - vtk
    - pyvista
    - pyvistaqt
    - pyradiomics
    - umap-learn
    - edt
    - skan
    - cvxopt
    - cupy-cuda112

2. I ran conda activate main2, and then I tried to install PyChrono using conda install -c projectchrono/label/develop pychrono, but the install fails with the output.

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

 - pychrono -> python[version='>=2.7,<2.8.0a0|>=3.10,<3.11.0a0|>=3.9,<3.10.0a0']

Your python: python=3.8

If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.

The following specifications were found to be incompatible with your system:

 - feature:/linux-64::__glibc==2.31=0
 - python=3.8 -> libgcc-ng[version='>=7.5.0'] -> __glibc[version='>=2.17']

Your installed version is: 2.31

So there seems to be 2 problems here:
1. For __glibc, version 2.31 is needed, but it also shows that I already have 2.31.
2. Python version, which is unsatisfiable.
If I have python 3.9 installed, I get an UnsatisfiableError when running conda install -c projectchrono/label/develop pychrono with:
 - pychrono -> python[version='>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0']
Your python: python=3.9
Okay, so 3.9 doesn't work. But if I have python 3.7 installed, I also get an UnsatisfiableError when running the conda install with:
  - pychrono -> python[version='>=2.7,<2.8.0a0|>=3.10,<3.11.0a0|>=3.9,<3.10.0a0']
Your python: python=3.7

Has anyone run into installation issues recently? Or can anyone reproduce the above issues? I've been using PyChrono for about 2 years and I have never run into this issue before with the install. The last time I installed it was June 2021 and it worked without any issues. I'm running Ubuntu 20.04.

Thank you,
QC




Qian Cao

unread,
Mar 30, 2022, 1:16:23 PM3/30/22
to ProjectChrono
Hi,

I'd like to follow up on this post.

The __glibc problem seems to be a clash between the official packages in anaconda and the packages in the conda-forge channel.

For anyone having similar problems, I was able to install pychrono successfully by adding:

channels:
  - conda-forge

to my .yml file.

However, I'm still having problems with the current conda binaries for linux. During the install, I'm getting:

Preparing transaction: done
Verifying transaction: /  
SafetyError: The package for pychrono located at /home/qcao/anaconda3/pkgs/pychrono-7.0.0-py38_0
appears to be corrupted. The path 'lib/python3.8/site-packages/pychrono/sensor.py'
has an incorrect size.
 reported size: 142132 bytes
 actual size: 142420 bytes


And some of my code which worked a few months ago is failing.


import pychrono.fea as fea
fea.ChElementTetra_4()

>> AttributeError: module 'pychrono.fea' has no attribute 'ChElementTetra_4'

Has this class been renamed to ChElementTetraCorot_4? I haven't found any documentation that mentioned this change.

Thanks,
Qian
Reply all
Reply to author
Forward
0 new messages