conda-forge / rdkit-feedstock

A conda-smithy repository for rdkit.
BSD 3-Clause "New" or "Revised" License
8 stars 22 forks source link

Conda not installing properly #70

Closed marcosfelt closed 3 years ago

marcosfelt commented 3 years ago

Issue:

Conda seems to be missing some C files. Seems related to #3851. I ran the following install command:

  conda install -q -y -c conda-forge rdkit=2020.09.02

This is the trace when I try to run from rdkit import Chem:

   File "/storage/notebooks/TL-BO/.envs/lib/python3.7/site-packages/rxnfp/tokenization.py", line 14, in <module>
         from rdkit import Chem
    File "/storage/notebooks/TL-BO/.envs/lib/python3.7/site-packages/rdkit/Chem/__init__.py", line 23, in <module>
           from rdkit.Chem.rdmolfiles import *
   ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by 
          /storage/notebooks/TL-BO/.envs/lib/python3.7/site-packages/rdkit/Chem/../../../../libboost_regex.so.1.74.0)


Environment (conda list):

``` $ conda list # packages in environment at /storage/notebooks/TL-BO/.envs: # # Name Version Build Channel _libgcc_mutex 0.1 conda_forge conda-forge _openmp_mutex 4.5 1_gnu conda-forge backcall 0.2.0 pyhd3eb1b0_0 boost 1.74.0 py37h6dcda5c_3 conda-forge boost-cpp 1.74.0 hc6e9bd1_2 conda-forge bzip2 1.0.8 h7f98852_4 conda-forge ca-certificates 2020.12.5 ha878542_0 conda-forge cairo 1.16.0 h6cf1ce9_1008 conda-forge certifi 2020.12.5 py37h89c1867_1 conda-forge chardet 4.0.0 pypi_0 pypi cheroot 8.5.2 pypi_0 pypi cherrypy 18.6.0 pypi_0 pypi click 7.1.2 pypi_0 pypi colour 0.1.5 pypi_0 pypi configparser 5.0.2 pypi_0 pypi cycler 0.10.0 py_2 conda-forge decorator 5.0.5 pyhd3eb1b0_0 docker-pycreds 0.4.0 pypi_0 pypi faerun 0.3.20 pypi_0 pypi filelock 3.0.12 pypi_0 pypi fontconfig 2.13.1 hba837de_1004 conda-forge freetype 2.10.4 h0708190_1 conda-forge gettext 0.19.8.1 h0b5b191_1005 conda-forge gitdb 4.0.7 pypi_0 pypi gitpython 3.1.14 pypi_0 pypi greenlet 1.0.0 py37hcd2ae1e_0 conda-forge icu 68.1 h58526e2_0 conda-forge idna 2.10 pypi_0 pypi importlib-metadata 3.10.0 py37h89c1867_0 conda-forge ipykernel 5.5.3 py37h085eea5_0 conda-forge ipython 7.22.0 py37hb070fc8_0 ipython_genutils 0.2.0 pyhd3eb1b0_1 jaraco-classes 3.2.1 pypi_0 pypi jaraco-collections 3.3.0 pypi_0 pypi jaraco-functools 3.3.0 pypi_0 pypi jaraco-text 3.5.0 pypi_0 pypi jedi 0.17.0 py37_0 jinja2 2.11.3 pypi_0 pypi joblib 1.0.1 pyhd3eb1b0_0 jpeg 9d h36c2ea0_0 conda-forge jupyter_client 6.1.12 pyhd3eb1b0_0 jupyter_core 4.7.1 py37h06a4308_0 kiwisolver 1.3.1 py37h2527ec5_1 conda-forge lcms2 2.12 hddcbb42_0 conda-forge ld_impl_linux-64 2.35.1 hea4e1c9_2 conda-forge libblas 3.9.0 8_openblas conda-forge libcblas 3.9.0 8_openblas conda-forge libffi 3.3 he6710b0_2 libgcc-ng 9.3.0 h2828fa1_18 conda-forge libgfortran-ng 9.3.0 hff62375_18 conda-forge libgfortran5 9.3.0 hff62375_18 conda-forge libglib 2.68.0 h3e27bee_2 conda-forge libgomp 9.3.0 h2828fa1_18 conda-forge libiconv 1.16 h516909a_0 conda-forge liblapack 3.9.0 8_openblas conda-forge libopenblas 0.3.12 pthreads_h4812303_1 conda-forge libpng 1.6.37 h21135ba_2 conda-forge libprotobuf 3.15.7 h780b84a_0 conda-forge libsodium 1.0.18 h7b6447c_0 libstdcxx-ng 9.3.0 h6de172a_18 conda-forge libtiff 4.2.0 hdc55705_0 conda-forge libuuid 2.32.1 h7f98852_1000 conda-forge libwebp-base 1.2.0 h7f98852_2 conda-forge libxcb 1.13 h7f98852_1003 conda-forge libxml2 2.9.10 h72842e0_3 conda-forge lz4-c 1.9.3 h9c3ff4c_0 conda-forge markupsafe 1.1.1 pypi_0 pypi matplotlib 3.2.2 pypi_0 pypi matplotlib-base 3.4.1 py37hdd32ed1_0 conda-forge more-itertools 8.7.0 pypi_0 pypi ncurses 6.2 he6710b0_1 numpy 1.20.2 py37h038b26d_0 conda-forge olefile 0.46 pyh9f0ad1d_1 conda-forge openssl 1.1.1k h7f98852_0 conda-forge packaging 20.9 pypi_0 pypi pandas 1.2.3 py37hdc94413_0 conda-forge parso 0.8.2 pyhd3eb1b0_0 pathtools 0.1.2 pypi_0 pypi pcre 8.44 he1b5a44_0 conda-forge pexpect 4.8.0 pyhd3eb1b0_3 pickleshare 0.7.5 pyhd3eb1b0_1003 pillow 8.1.2 py37h4600e1f_0 conda-forge pip 21.0.1 py37h06a4308_0 pixman 0.40.0 h36c2ea0_0 conda-forge portend 2.7.1 pypi_0 pypi promise 2.3 pypi_0 pypi prompt-toolkit 3.0.17 pyh06a4308_0 protobuf 3.15.7 py37hcd2ae1e_0 conda-forge psutil 5.8.0 pypi_0 pypi pthread-stubs 0.4 h36c2ea0_1001 conda-forge ptyprocess 0.7.0 pyhd3eb1b0_2 pycairo 1.20.0 py37h01af8b0_1 conda-forge pygments 2.8.1 pyhd3eb1b0_0 pyparsing 2.4.7 pyh9f0ad1d_0 conda-forge python 3.7.10 hffdb5ce_100_cpython conda-forge python-dateutil 2.8.1 pyhd3eb1b0_0 python_abi 3.7 1_cp37m conda-forge pytz 2021.1 pyhd3eb1b0_0 pyyaml 5.4.1 pypi_0 pypi pyzmq 20.0.0 py37h2531618_1 rdchiral 1.0.0 pypi_0 pypi rdkit 2020.09.2 py37h713bca6_0 conda-forge readline 8.1 h27cfd23_0 regex 2021.4.4 pypi_0 pypi reportlab 3.5.66 py37h69800bb_0 conda-forge requests 2.25.1 pypi_0 pypi rxnfp 0.0.8 pypi_0 pypi sacremoses 0.0.44 pypi_0 pypi scikit-learn 0.23.1 pypi_0 pypi scipy 1.4.1 pypi_0 pypi sentencepiece 0.1.95 pypi_0 pypi sentry-sdk 1.0.0 pypi_0 pypi seqeval 1.2.2 pypi_0 pypi setuptools 52.0.0 py37h06a4308_0 shortuuid 1.0.1 pypi_0 pypi simpletransformers 0.34.4 pypi_0 pypi six 1.15.0 py37h06a4308_0 smmap 4.0.0 pypi_0 pypi sqlalchemy 1.4.5 py37h5e8e339_1 conda-forge sqlite 3.35.4 hdfb4753_0 subprocess32 3.5.4 pypi_0 pypi tempora 4.0.2 pypi_0 pypi tensorboardx 2.2 pypi_0 pypi threadpoolctl 2.1.0 pyh5ca1d4c_0 tk 8.6.10 hbc83047_0 tl-bo 0.1.0 dev_0 tokenizers 0.7.0 pypi_0 pypi torch 1.8.1 pypi_0 pypi tornado 6.1 py37h27cfd23_0 tqdm 4.60.0 pyhd8ed1ab_0 conda-forge traitlets 5.0.5 pyhd3eb1b0_0 transformers 2.11.0 pypi_0 pypi typing_extensions 3.7.4.3 py_0 conda-forge ujson 4.0.2 pypi_0 pypi urllib3 1.26.4 pypi_0 pypi wandb 0.10.25 pypi_0 pypi wcwidth 0.2.5 py_0 wheel 0.36.2 pyhd3eb1b0_0 xlrd 2.0.1 pyhd8ed1ab_3 conda-forge xorg-kbproto 1.0.7 h7f98852_1002 conda-forge xorg-libice 1.0.10 h7f98852_0 conda-forge xorg-libsm 1.2.3 hd9c2040_1000 conda-forge xorg-libx11 1.7.0 h7f98852_0 conda-forge xorg-libxau 1.0.9 h7f98852_0 conda-forge xorg-libxdmcp 1.1.3 h7f98852_0 conda-forge xorg-libxext 1.3.4 h7f98852_1 conda-forge xorg-libxrender 0.9.10 h7f98852_1003 conda-forge xorg-renderproto 0.11.1 h7f98852_1002 conda-forge xorg-xextproto 7.3.0 h7f98852_1002 conda-forge xorg-xproto 7.0.31 h7f98852_1007 conda-forge xz 5.2.5 h7b6447c_0 zc-lockfile 2.0 pypi_0 pypi zeromq 4.3.4 h2531618_0 zipp 3.4.1 pyhd8ed1ab_0 conda-forge zlib 1.2.11 h7b6447c_3 zstd 1.4.9 ha95c52a_0 conda-forge ```


Details about conda and system ( conda info ):

``` $ conda info active environment : /storage/notebooks/TL-BO/.envs active env location : /storage/notebooks/TL-BO/.envs shell level : 2 user config file : /root/.condarc populated config files : conda version : 4.9.1 conda-build version : 3.20.5 python version : 3.6.10.final.0 virtual packages : __cuda=11.2=0 __glibc=2.27=0 __unix=0=0 __archspec=1=x86_64 base environment : /opt/conda (writable) channel URLs : https://repo.anaconda.com/pkgs/main/linux-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/r/linux-64 https://repo.anaconda.com/pkgs/r/noarch package cache : /opt/conda/pkgs /root/.conda/pkgs envs directories : /opt/conda/envs /root/.conda/envs platform : linux-64 user-agent : conda/4.9.1 requests/2.24.0 CPython/3.6.10 Linux/5.4.0-66-generic ubuntu/18.04.5 glibc/2.27 UID:GID : 0:0 netrc file : None offline mode : False ```
jaimergp commented 3 years ago

That /usr/lib/x86_64-linux-gnu/libstdc++.so.6 path is suspicious. It shouldn't be loading anything from the system's libraries.

I see that you have defaults in your channels, as well as a lot of packages from pypi and unknown locations. Makes me thing you are mixing system-created virtual envs with conda and hence the library confusion.

Could you create a new, separate environment just for RDKit and see if this reproduces?

conda create -n rdkit -c conda-forge rdkit
conda activate rdkit
python -c "import rdkit.Chem"
marcosfelt commented 3 years ago

I played around a lot just now and tried adding an import of rdkit at the top of my top-level file, and that worked. Not completely sure why. Thanks for the suggestions!