安装ShortRead时找不到zlib

时间:2018-06-25 06:30:45

标签: anaconda zlib

我正在使用通过蟒蛇(版本5.2)安装的R(3.4.3)。我已经使用conda安装了zlib。但是,当尝试安装Bioconductor R软件包:“ ShortRead”时,出现此错误:

checking for gzeof in -lz... no
configure: error: zlib not found
ERROR: configuration failed for package ‘ShortRead’

我尝试使用Bioconductor biocLite安装在R中并安装.packages,但是没有运气!

我还尝试过直接从conda安装:

conda install -c bioconda bioconductor-shortread 
Solving environment: failed
UnsatisfiableError: The following specifications were found to be in conflict:
  - bioconductor-shortread
Use "conda info <package>" to see the dependencies for each package.

似乎conda的R 3.4.3不提供此软件包。

我还手动下载了zlib软件包。编译后,我尝试通过将LD库路径导出到zlib的lib位置来进行安装:

export LD_LIBRARY_PATH=/pathtozlib/zlib/lib

它也没有帮助。任何帮助将不胜感激!

PS我在工作的计算机上没有root特权。

我发现其他人正面临这个问题: https://support.bioconductor.org/p/108808/。他们认为这可能是conda库的问题。

谢谢

3 个答案:

答案 0 :(得分:1)

我认为问题在于autotoolsr-base>3.4.1b2的配置,但是我无力解决。好的一面是,尽管configure在预安装期间找不到zlib,但是zlib实际上存在于任何带有r-base的Conda环境中,并且可以在安装过程中链接实际安装。我提交了issue at Conda-Forge,但是直到并且除非问题在r-base中得到解决,否则我制作了ShortRead的分支,跳过了检查。 r-base=3.5.1对我有用。

tldr: remotes::install_github("brendanf/ShortRead")

答案 1 :(得分:0)

过去一周我有同样的错误。我尝试了有关Internet上zlib库的所有提及的事情。我无法正确修复。我已经在运行时安装了zlib:pkg-config zlib --libs;我得到的输出:-lz $ pkg-config zlib --libs -lz

我正在运行conda(v4.5.4)。 R版本3.4.3,我将R作为conda环境。我认为问题出在多个zlib库(ubuntu base和conda)上。

我以某种方式使它起作用。我所做的是将R安装在ubuntu shell中(即conda之外),然后在其中安装ShortRead库。 zlib没有冲突/错误。之后,我将核心Rlib目录添加到conda中的libPaths中。

$.libPaths(c('/home/aridaman/.conda/envs/rstudio/lib/R/library','/usr/local/lib/R/site-library/','/usr/lib/R/site-library','/usr/lib/R/site-library'))

这不是理想的方法,但是以某种方式对我有用。我希望有一个更好的基于conda的解决方案。

答案 2 :(得分:0)

如果您正在运行使用opencv的深度学习算法,并且在安装所有依赖项时找不到zlib,请不要惊慌。我遇到了同样的问题。可能有以下原因:

  1. 如果您安装了类似anaconde的IDE,则您的pip版本将自动设置为3.4.2,而在此版本中,zlib.h会出现问题,因此会显示错误。因此,最好创建一个虚拟环境,请尝试安装最新版本的pip,如果没有安装,请卸载anaconda并使用来自pip的jupyter {具有最新的pip版本}。
  2. 如果您的pip版本未更新,请以最新版本进行更新。