Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Placeholder too short" error during anaconda installation of ncurses

I'm trying to install rpy2 with anaconda using:

conda install -c https://conda.anaconda.org/r rpy2

While conda is updating dependencies and linking packages, it stops with this error:

Linking packages ...
Error: ERROR: placeholder '/root/miniconda3/envs/_build_placehold_placehold_placehold_placehold_placehold_p' too short in: ncurses-5.9-4

Here's info for the installation.

Current conda install:

             platform : linux-64
        conda version : 3.18.2
  conda-build version : 1.14.1
       python version : 2.7.10.final.0
     requests version : 2.8.0

Does anyone know what this error means and how to resolve it?

like image 925
bnelsj Avatar asked Sep 26 '22 12:09

bnelsj


1 Answers

When Conda installs files, some of them have the build prefix in them. That's the placeholder you see. We have to change that before packages will work on your system. That's "relocatability." The prefix that you are trying to install to is longer than the prefix that the package was built with. We can replace longer strings with shorter strings in the replacement, but not vice versa.

We have increased the path length of the build prefix in Conda-Build 2.0.0, which is in beta right now. Once people begin using this, these problems should go away. However, it will only be truly effective by rebuilding all packages that have binary-embedded prefixes. This will take quite a while.

TLDR: try to install to a shorter folder path, if at all possible.

like image 95
msarahan Avatar answered Oct 03 '22 14:10

msarahan