无法执行'x86_64-conda_cos6-linux-gnu-gcc':没有这样的文件或目录(pysam安装)

我正在尝试安装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 

有类似的线程,但他们似乎都解决了问题assumigpipe理员权利,我没有。 有没有办法来安装所需的文件?

免责声明:这个问题来自我以前的职位。 手动安装pysam错误:“ImportError:No module named version”但是由于它可能需要不同的方法,所以我提出了一个自己的问题。

它看起来像Anaconda有一个新的版本(4.3.27),将C编译器路径设置为一个不存在的可执行文件(相当尴尬的错误,我相信他们会很快修复)。 我有一个类似的问题,使用最新的Miniconda进行pip安装,我使用4.3.21版本进行了修复,并确保我没有像conda update conda那样做。

请参阅https://repo.continuum.io/miniconda/ ,其中包含发行日期和版本。

现在应该是安全的更新conda。 在以下针对linux-64的python包中修复了这个问题:

  • 蟒蛇-3.6.2-h0b30769_14.tar.bz2
  • 蟒蛇-2.7.14-h931c8b0_15.tar.bz2
  • 蟒蛇-2.7.13-hac47a24_15.tar.bz2
  • 蟒蛇-3.5.4-hc053d89_14.tar.bz2

问题出在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问题跟踪器上发布问题。

相关的代码更改如下:

  • py27: https : //github.com/anacondarecipes/python-feedstock/tree/master-2.7.14
  • py35: https : //github.com/anacondarecipes/python-feedstock/tree/master-3.5
  • py36: https : //github.com/anacondarecipes/python-feedstock

$PATH某个地方(例如~/bin ),

 ln -sf $(which gcc) x86_64-conda_cos6-linux-gnu-gcc 

不要把它放在系统目录或者conda的bin目录中,记得在上游解决问题的时候去掉链接。 gcc --version需要至少6。