2012-04-08 9 views
7

Estoy tratando de compilar vim desde la fuente con el intérprete de python en Ubuntu. He instalado las dependencias para vim, instalado python2.7-devel y paquetes python2.7-dbg en Ubuntu y hacer el paso de configuración como estacompilando vim con soporte de python en Ubuntu

./configure --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config 

directorio de la configuración no contener el archivo config.c. El paso de hacer falla con el siguiente error.

... 

objects/py_config.o:(.data+0xcc): undefined reference to `initcStringIO' 
objects/py_config.o:(.data+0xd4): undefined reference to `initcPickle' 
objects/py_config.o:(.data+0xdc): undefined reference to `initzlib' 
collect2: ld returned 1 exit status 
make: *** [vim] Error 1 

He intentado compilaciones estables, ajustado alrededor de configurar etc., pero no encuentro una respuesta definitiva. También vim crea sin el intérprete de python.

Aquí la completa

de salida - http://paste.pocoo.org/show/577749/

error - http://paste.pocoo.org/show/577752/

Makefile - http://paste.pocoo.org/show/577751/

+0

Podría por favor incluya más líneas de mensajes de error? Por cierto, este es un error de enlace, que a menudo ocurre debido a rutas incorrectas a la biblioteca. ¿Revisaste las rutas a las bibliotecas? –

+2

¿Por qué simplemente no prueba 'vim-nox'? – neoascetic

+0

@eleweek - Incluye enlaces a la salida y el error. –

Respuesta

3

responder a mi propia pregunta después de hacer una investigación significativa. Busca en ciertas instalaciones de Ubuntu, los archivos que vim está buscando compilation may be missing.

Después de darme cuenta de que seguí adelante con la instalación personalizada de la fuente de Python (./configure --prefix=/home/senthil/localpython; make; make install) y luego procedí con la compilación de vim antes de ésta.

  1. Indica tu camino para que python apunta a la nueva instalación local.

    PATH =/home/senthil/localpython/bin: $ PATH

  2. continuación, inicie la compilación con las siguientes banderas.

    ./configure --enable-with-pythoninterp características = enorme --con-python-config-dir =/home/senthil/localpython/lib/python2.7/config

Debería ver que vim compila bien con el uso del intérprete local de python. Como se ha informado por varias fuentes, esto aumenta el tamaño de vim y también sentí que la velocidad se había vuelto más lenta. Justo después de terminar este ejercicio (de una manera realmente con paciencia), creo que me gustaría utilizar el sistema compilado vim.

2

Antes de compilar Vim, instale python-dev y python2.7-dev (o cualquier desarrollador que coincida con su versión de python). Esos dos paquetes podrían apuntar a los mismos archivos, pero funcionó para mí.

+1

Creo que la respuesta del OP es más suficiente. –

+0

La respuesta de OP es ciertamente más larga, pero no funcionó para mí. Además, me sorprendería si funcionara. ¿Por qué tiene sentido darle a Vim un archivo de configuración para una interpelación de Python que no es el interp Python del sistema? –

+0

@AlexBeal ¿cómo instalo python-dev? Estoy intentando instalarlo en Debian (y no tengo privilegios de administrador) –

3

obtener el configdir con /usr/bin/python2.7-config --configdir

es decir:

sudo apt-get build-dep vim 
hg clone https://vim.googlecode.com/hg/ vim 
./configure --enable-pythoninterp --with-features=huge --prefix=$HOME/opt/vim --with-python-config-dir=$(/usr/bin/python2.7-config --configdir) 
make && make install 
Cuestiones relacionadas