garrettj403 / QMix

Simulate the behavior of SIS junctions
https://garrettj403.github.io/QMix/
GNU General Public License v3.0
7 stars 2 forks source link

Packages not available to build conda environment #1

Closed PaulKGrimes closed 5 years ago

PaulKGrimes commented 5 years ago

When I try to create the conda environment using the environment.yml file, I get the follow error. This is on both my Windows desktop Anaconda install and my Windows laptop Anaconda install, both running conda 4.6.2.

The list is presented in a different order on each machine, and so might not be exactly the same.

Collecting package metadata: done
Solving environment: failed

ResolvePackageNotFound:
  - matplotlib==3.0.0=py37h54f8f79_0
  - sqlite==3.25.2=ha441bb4_0
  - llvmlite==0.25.0=py37h8c7ce04_0
  - xz==5.2.4=h1de35cc_4
  - pyqt==5.9.2=py37h655552a_2
  - appnope==0.1.0=py37_0
  - pycosat==0.6.3=py37h1de35cc_0
  - mkl_fft==1.0.6=py37h27c97d8_0
  - openssl==1.0.2p=h1de35cc_0
  - readline==7.0=h1de35cc_5
  - numpy==1.15.4=py37hacdab7b_0
  - gettext==0.19.8.1=h15daf44_3
  - zeromq==4.2.5=h0a44026_1
  - libcxx==4.0.1=h579ed51_0
  - kiwisolver==1.0.1=py37h0a44026_0
  - expat==2.2.6=h0a44026_0
  - mistune==0.8.4=py37h1de35cc_0
  - tk==8.6.8=ha441bb4_0
  - tornado==5.1.1=py37h1de35cc_0
  - libedit==3.1.20170329=hb402a30_2
  - jpeg==9b=he5867d9_2
  - scipy==1.1.0=py37h1410ff5_2
  - python==3.7.0=hc167b69_0
  - pcre==8.42=h378b8a2_0
  - yaml==0.1.7=hc338f04_2
  - sip==4.19.8=py37h0a44026_0
  - libcxxabi==4.0.1=hebd6815_0
  - numpy-base==1.15.4=py37h6575580_0
  - dbus==1.13.2=h760590f_1
  - ptyprocess==0.6.0=py37_0
  - pyzmq==17.1.2=py37h1de35cc_0
  - mkl_random==1.0.2=py37h27c97d8_0
  - cffi==1.11.5=py37h6174b99_1
  - qt==5.9.6=h45cd832_2
  - glib==2.56.2=hd9629dc_0
  - zlib==1.2.11=hf3cbc9b_2
  - numba==0.40.0=py37h6440ff4_0
  - libiconv==1.15=hdd342a3_7
  - markupsafe==1.0=py37h1de35cc_1
  - ruamel_yaml==0.15.46=py37h1de35cc_0
  - icu==58.2=h4b95b61_1
  - libpng==1.6.34=he12f830_0
  - libgfortran==3.0.1=h93005f0_2
  - cryptography==2.3.1=py37hdbc3d79_0
  - libffi==3.2.1=h475c297_4
  - freetype==2.9.1=hb4e5f40_0
  - libsodium==1.0.16=h3efe00b_0
  - ncurses==6.1=h0a44026_0
PaulKGrimes commented 5 years ago

I think this is due to these packages being OS X builds. The environment.yml file should be made platform neutral if at all possible.

garrettj403 commented 5 years ago

Hi @PaulKGrimes, this is a good point. I was previously using

conda env export > environment.yml

to create the virtual environment file, but according to the documentation

NOTE: These explicit spec files are not usually cross platform

I have now rewritten the file to only include the necessary packages. I have also stripped the version numbers and build codes, so it should now work on different operating systems. I haven't been able to test this yet on Windows. I hope to do this tomorrow.

PaulKGrimes commented 5 years ago

Thanks @garrettj403

That seems to be OK. At some point it'd be worth checking what the lowest version is that's acceptable for key packages and putting >= dependency in (definitely on the Python version), but I don't think that's necessary right now.

PaulKGrimes commented 5 years ago

This is resolved now, so closing this issue.

PaulKGrimes commented 5 years ago

Actually, this now fails because the python version created can be too old, if the base anaconda uses Python 2. I suggest setting a minimum python version of 3.4 or 3.5

Reopening.

garrettj403 commented 5 years ago

In the environment file, I had previously specified python=3.7.* in order to use Python version 3.7. I have now changed this to python>=3.5 in order to use a minimum of Python version 3.5. Hopefully this addresses this issue.