我正在尝试安装pysam。
执行后:
python path/to/pysam-master/setup.py build
产生此错误:
unable to execute 'x86_64-conda_cos6-linux-gnu-gcc': No such file or directory
error: command 'x86_64-conda_cos6-linux-gnu-gcc' failed with exit status 1
有类似的线程,但它们似乎都解决了我没有的问题管理员权利问题。有没有办法安装所需的文件?
免责声明:此问题来自我之前的帖子。 manually installing pysam error: "ImportError: No module named version" 但由于它可能需要采用不同的方法,因此我将其作为自己的问题。
答案 0 :(得分:14)
看起来Anaconda有一个新版本(4.3.27),它将C编译器路径设置为一个不存在的可执行文件(这是一个非常令人尴尬的错误;我确定他们很快就会修复它)。我使用最新的Miniconda有一个类似的问题,使用最新的Miniconda,我使用4.3.21版本修复并确保我没有像conda update conda
这样做。
请参阅https://repo.continuum.io/miniconda/,其中包含发布日期和版本。
答案 1 :(得分:6)
如果使用conda安装了R,那么在安装某些R软件包时也会收到同样的错误。(正如我所说)。
然后只需执行以下命令安装包:conda install gxx_linux-64
即可使该命令可用。
来源: https://github.com/RcppCore/Rcpp/issues/770#issuecomment-346716808
答案 2 :(得分:2)
现在更新conda应该是安全的。这在linux-64的以下python包中修复:
问题就像Jon Riehl所描述的那样 - 我们(Anaconda,以前的Continuum)用我们使用crosstool-ng创建的新GCC包构建了我们所有的包。这个软件包没有gcc,它有一个带前缀的gcc - 你看到的缺失命令x86_64-conda_cos6-linux-gnu-gcc
。这将被绑定到python中,并且使用该python构建的任何扩展都在寻找该编译器。我们已使用添加到python 3.6的_PYTHON_SYSCONFIGDATA_NAME变量修复了该问题。我们已将其移植到python 2.7和3.5。您现在只能使用默认编译器(gcc)看到python,并且必须将_PYTHON_SYSCONFIGDATA_NAME设置为适当的文件名才能使用新的编译器。设置此变量是我们将其放入编译器包的激活脚本中的内容,因此您永远不必担心它。但是,我们可能需要一两天时间才能获得新的编译器软件包,因此,如果您想使用新的编译器并需要帮助,请在conda-build问题跟踪器上发布问题。
相关代码更改位于:
答案 3 :(得分:0)
最适合我的解决方案是使用conda安装r软件包:
conda install -c r r-tidyverse
或r-gggplot2,r-reader
还要确保安装不会因为管理员权限而失败。
它将为您节省很多痛苦
答案 4 :(得分:-3)
$PATH
中的某个地方(例如~/bin
),请执行
ln -sf $(which gcc) x86_64-conda_cos6-linux-gnu-gcc
不要将它放在系统目录或conda的bin目录中,并记住在上游解决问题时删除链接。 gcc --version
应该是第6版。
编辑:我理解反对操纵系统路径的评论中的情绪,但也许我们可以在背诵教义之前对实际案例使用一点批判性思维。我们上面的命令实际上做了什么?仅仅将名为x86_64-conda_cos6-linux-gnu-gcc
的可执行文件(符号链接)放在个人~/bin
目录中。
如果在个人~/bin
目录中放置某些东西会破坏未来conda
(在它修复C编译器路径以指向它嵌入的gcc
之后),那么这将是conda
的错误。这个详细命名的编译器是否会与其他任何内容混淆?不太可能。即使有些东西确实捡起来,它毕竟只是你的系统gcc
......