USDA-VS / vSNP

vSNP -- validate SNPs
GNU General Public License v3.0
19 stars 12 forks source link

samtools: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory #11

Closed ghbhc closed 2 years ago

ghbhc commented 2 years ago

Hello,

I am having trouble installing/using this software.

OS: CentOS Linux release 7.9.2009 (Core) Conda version: 4.11.0

Steps taken to install:

conda create -n vsnp
source activate vsnp
conda install -c defaults -c bioconda -c conda-forge vsnp
cd
git clone https://github.com/USDA-VS/vSNP_reference_options.git
vsnp_path_adder.py -d ~/vSNP_reference_options

This installs the software, but upon using vSNP_step1.py, I get:

### SRR Making indexes...
samtools: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory

conda list output:

# packages in environment at /home/bc06026/.conda/envs/vsnp:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       1_gnu    conda-forge
abyss                     2.0.2                h51208dd_5    bioconda
asciitree                 0.3.3                      py_2  
bc                        1.07.1               h7f98852_0    conda-forge
biopython                 1.78             py39h7f8727e_0  
blas                      1.0                         mkl  
bokeh                     2.4.2            py39h06a4308_0  
bottleneck                1.3.4            py39hce1f21e_0  
brotli                    1.0.9                he6710b0_2  
bwa                       0.7.17               h7132678_9    bioconda
bzip2                     1.0.8                h7b6447c_0  
c-ares                    1.18.1               h7f8727e_0  
ca-certificates           2022.3.29            h06a4308_0  
certifi                   2021.10.8        py39h06a4308_2  
click                     8.0.4            py39h06a4308_0  
cloudpickle               2.0.0              pyhd3eb1b0_0  
cycler                    0.11.0             pyhd3eb1b0_0  
cytoolz                   0.11.0           py39h27cfd23_0  
dask                      2022.2.1           pyhd3eb1b0_0  
dask-core                 2022.2.1           pyhd3eb1b0_0  
dbus                      1.13.18              hb2f20db_0  
distributed               2022.2.1           pyhd3eb1b0_0  
expat                     2.4.4                h295c915_0  
fasteners                 0.16.3             pyhd3eb1b0_0  
fontconfig                2.13.1               h6c09931_0  
fonttools                 4.25.0             pyhd3eb1b0_0  
freebayes                 0.9.21.7                      0    bioconda
freetype                  2.11.0               h70c0345_0  
fsspec                    2022.2.0           pyhd3eb1b0_0  
giflib                    5.2.1                h7b6447c_0  
glib                      2.69.1               h4ff587b_1  
gst-plugins-base          1.14.0               h8213a91_2  
gstreamer                 1.14.0               h28cd5cc_2  
h5py                      3.6.0            py39ha0f2276_0  
hdf5                      1.10.6               hb1b8bf9_0  
heapdict                  1.0.1              pyhd3eb1b0_0  
htslib                    1.14                 h9093b5e_0    bioconda
humanize                  3.10.0             pyhd3eb1b0_0  
icu                       58.2                 he6710b0_3  
intel-openmp              2021.4.0          h06a4308_3561  
jinja2                    3.0.3              pyhd3eb1b0_0  
joblib                    1.1.0              pyhd3eb1b0_0  
jpeg                      9d                   h7f8727e_0  
kiwisolver                1.3.2            py39h295c915_0  
krb5                      1.19.2               hac12032_0  
lcms2                     2.12                 h3be6417_0  
ld_impl_linux-64          2.35.1               h7274673_9  
libcurl                   7.80.0               h0b77cf5_0  
libdeflate                1.7                  h7f98852_5    conda-forge
libedit                   3.1.20210910         h7f8727e_0  
libev                     4.33                 h7f8727e_1  
libffi                    3.3                  he6710b0_2  
libgcc-ng                 11.2.0              h1d223b6_14    conda-forge
libgfortran-ng            7.5.0               ha8ba4b0_17  
libgfortran4              7.5.0               ha8ba4b0_17  
libgomp                   11.2.0              h1d223b6_14    conda-forge
libnghttp2                1.46.0               hce63b2e_0  
libpng                    1.6.37               hbc83047_0  
libssh2                   1.9.0                h1ba5d50_1  
libstdcxx-ng              11.2.0              he4da1e4_14    conda-forge
libtiff                   4.2.0                h85742a9_0  
libuuid                   1.0.3                h7f8727e_2  
libwebp                   1.2.2                h55f646e_0  
libwebp-base              1.2.2                h7f8727e_0  
libxcb                    1.14                 h7b6447c_0  
libxml2                   2.9.12               h03d6c58_0  
libzlib                   1.2.11            h166bdaf_1014    conda-forge
locket                    0.2.1            py39h06a4308_2  
lz4-c                     1.9.3                h295c915_1  
make                      4.2.1                h1bed415_1  
markupsafe                2.0.1            py39h27cfd23_0  
matplotlib                3.5.1            py39h06a4308_1  
matplotlib-base           3.5.1            py39ha18d171_1  
mkl                       2021.4.0           h06a4308_640  
mkl-service               2.4.0            py39h7f8727e_0  
mkl_fft                   1.3.1            py39hd3c417c_0  
mkl_random                1.2.2            py39h51133e4_0  
mpi                       1.0                     openmpi  
msgpack-python            1.0.2            py39hff7bd54_1  
munkres                   1.1.4                      py_0  
ncurses                   6.3                  h7f8727e_2  
networkx                  2.7.1              pyhd3eb1b0_0  
numcodecs                 0.9.1            py39h295c915_0  
numexpr                   2.8.1            py39h6abb31d_0  
numpy                     1.21.2           py39h20f2e39_0  
numpy-base                1.21.2           py39h79a1101_0  
openjdk                   11.0.13              h87a67e3_0  
openmpi                   4.0.2                hb1b8bf9_1  
openssl                   1.1.1n               h7f8727e_0  
packaging                 21.3               pyhd3eb1b0_0  
pandas                    1.4.1            py39h295c915_1  
pandoc                    2.12                 h06a4308_0  
partd                     1.2.0              pyhd3eb1b0_1  
pcre                      8.45                 h295c915_0  
perl                      5.26.2               h14c3975_0  
picard                    2.18.29                       0    bioconda
pillow                    9.0.1            py39h22f2fdc_0  
pip                       21.2.4           py39h06a4308_0  
pomegranate               0.14.4           py39h9a67853_0  
psutil                    5.8.0            py39h27cfd23_1  
py-cpuinfo                8.0.0              pyhd3eb1b0_1  
pyparsing                 3.0.4              pyhd3eb1b0_0  
pyqt                      5.9.2            py39h2531618_6  
pysam                     0.16.0.1         py39h051187c_3    bioconda
python                    3.9.11               h12debd9_2  
python-dateutil           2.8.2              pyhd3eb1b0_0  
python_abi                3.9                      2_cp39    conda-forge
pytz                      2021.3             pyhd3eb1b0_0  
pyvcf                     0.6.8           py39hde42818_1002    conda-forge
pyyaml                    6.0              py39h7f8727e_1  
qt                        5.9.7                h5867ecd_1  
raxml                     8.2.12               hec16e2b_4    bioconda
readline                  8.1.2                h7f8727e_1  
regex                     2022.3.15        py39h7f8727e_0  
samtools                  1.15                 h3843a85_0    bioconda
scikit-allel              1.3.5            py39hde0f152_1    conda-forge
scikit-learn              1.0.2            py39h51133e4_1  
scipy                     1.7.3            py39hc147768_0  
seaborn                   0.11.2             pyhd3eb1b0_0  
setuptools                58.0.4           py39h06a4308_0  
sip                       4.19.13          py39h295c915_0  
six                       1.16.0             pyhd3eb1b0_1  
sortedcontainers          2.4.0              pyhd3eb1b0_0  
sqlite                    3.38.2               hc218d9a_0  
tabixpp                   1.1.0                hb264ae4_8    bioconda
tblib                     1.7.0              pyhd3eb1b0_0  
threadpoolctl             2.2.0              pyh0d69192_0  
tk                        8.6.11               h1ccaba5_0  
toolz                     0.11.2             pyhd3eb1b0_0  
tornado                   6.1              py39h27cfd23_0  
typing_extensions         4.1.1              pyh06a4308_0  
tzdata                    2022a                hda174b7_0  
vcflib                    1.0.3                hecb563c_1    bioconda
vsnp                      2.03                 hdfd78af_2    bioconda
wheel                     0.37.1             pyhd3eb1b0_0  
xlrd                      2.0.1              pyhd3eb1b0_0  
xlsxwriter                3.0.2              pyhd3eb1b0_0  
xz                        5.2.5                h7b6447c_0  
yaml                      0.2.5                h7b6447c_0  
zarr                      2.8.1              pyhd3eb1b0_0  
zict                      2.0.0              pyhd3eb1b0_0  
zlib                      1.2.11            h166bdaf_1014    conda-forge
zstd                      1.4.9                haebb681_0  

Attempts to resolve this:

  1. I found a similar Github issue here: https://github.com/merenlab/anvio/issues/1479 and tried the suggested solution of conda install -c bioconda samtools=1.9 --force-reinstall, but I'm getting
UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package libgcc-ng conflicts for:
python=3.9 -> zlib[version='>=1.2.11,<1.3.0a0'] -> libgcc-ng[version='>=10.3.0|>=7.2.0']
python=3.9 -> libgcc-ng[version='>=7.3.0|>=7.5.0']

Package ncurses conflicts for:
python=3.9 -> ncurses[version='>=6.2,<7.0a0|>=6.3,<7.0a0']
python=3.9 -> readline[version='>=8.0,<9.0a0'] -> ncurses[version='>=6.1,<7.0a0']

Package _libgcc_mutex conflicts for:
samtools=1.9 -> libgcc-ng[version='>=7.3.0'] -> _libgcc_mutex[version='*|0.1',build='main|conda_forge|main']
python=3.9 -> libgcc-ng[version='>=7.5.0'] -> _libgcc_mutex[version='*|0.1',build='main|conda_forge|main']The following specifications were found to be incompatible with your system:

  - feature:/linux-64::__glibc==2.17=0
  - feature:|@/linux-64::__glibc==2.17=0
  - samtools=1.9 -> libgcc-ng[version='>=7.3.0'] -> __glibc[version='>=2.17']

Your installed version is: 2.17
  1. I tried making a new environment and installing vsnp with conda install -c defaults -c bioconda -c conda-forge vsnp python=3.7 and after a very long time it did give me a y/n proceed to install prompt, but samtools was at 1.7 and I still got the same libcrypto.so.1.0.0 error.

  2. I tried downloading the most recent .tar.bz2 from here: https://anaconda.org/bioconda/vsnp/files, editing the meta.yaml changing python >=3.7 to python=3.7, conda-build ., but got:

conda_build.exceptions.DependencyNeedsBuildingError: Unsatisfiable dependencies for platform linux-64: {'vcflib', 'pysam', 'freebayes', 'scikit-allel', 'picard', 'raxml', 'samtools', 'abyss', 'bwa', 'pyvcf'}
  1. I tried the same thing but removing the version requirement from Python and setting samtools to require version 1.9, but got a similar conda_build.exceptions.DependencyNeedsBuildingError error.

Please advise the best way to resolve this and let me know if you need any other information. Thank you for your help.

stuber commented 2 years ago

Thanks for the message.

This is an issue with Anaconda that I've fought with too many times. :) Your error isn't the exact same but I think it is similar. I would give this a try and see if it solves the issue.

https://github.com/USDA-VS/vSNP/blob/master/docs/macOS_special_instructions.md

What I think is happening here is a conflict of libraries. It often seems between samtools and pysam requirements. Running instructions from the link above, and messing with different versions of samtools and pysam have solved the issue in the past. I wish I had a one-size-fits-all set of instructions to fix this, but it seems to be different for each environment.

I do currently have a new version of vsnp available... vsnp3.

https://github.com/USDA-VS/vsnp3

vsnp3 does not use pysam(for this reason), which seems to have fixed the problem. I've not installed it on that many systems, so I don't want to be too confident, but installations have been working consistently. The only issue I've found is it uses python 3.9 by default. If an older version (say 2020) of Anaconda is being used I've had to install with a lower version of python... 3.7/3.8.

vsnp3 is very similar. The UI options and output file organization is slightly different so I went with a new repo/name change.

ghbhc commented 2 years ago

Hello,

Thank you very much for your quick reply. Unfortunately while I was able to execute all of the macOS special instructions in the original vsnp Conda environment, I still got the same libcrypto.so.1.0.0 error.

I tried giving vsnp3 a shot, but it seems that CentOS 7's glibc (2.17) is too old for the version of numpy that vsnp3 requires (>=1.22.2). I'll click "Close with comment" but thank you for your help!