2012-10-13 283 views
7

He estado siguiendo paso a paso el screencast de kennethlove titulado "Getting Started with django". Estoy atrapado en el "Episodio 6: Las vistas genéricas son más baratas que Namebrand". Estoy intentando instalar "django-fastidioso" que requiere "Mercurial".Cabeceras de Python son necesarias para construir Mercurial

Im usando OSX 10.8.2 y cuando corro en la terminal: pip install mercurial Aparece el mensaje a continuación.

Downloading/unpacking mercurial 
    Downloading mercurial-2.3.2.tar.gz (3.6MB): 3.6MB downloaded 
    Running setup.py egg_info for package mercurial 

    Python headers are required to build Mercurial 
    Complete output from command python setup.py egg_info: 
    running egg_info 

creating pip-egg-info/mercurial.egg-info 

writing pip-egg-info/mercurial.egg-info/PKG-INFO 

writing top-level names to pip-egg-info/mercurial.egg-info/top_level.txt 

writing dependency_links to pip-egg-info/mercurial.egg-info/dependency_links.txt 

writing manifest file 'pip-egg-info/mercurial.egg-info/SOURCES.txt' 

warning: manifest_maker: standard file '-c' not found 



Python headers are required to build Mercurial 

---------------------------------------- 
Command python setup.py egg_info failed with error code 1 in /Users/gth158a/Sites/official/poll/build/mercurial 
Storing complete log in /Users/gth158a/.pip/pip.log 

He estado buscando una solución y el más cercano que he encontrado es que alguien having the same issue in Ubuntu pero su solución propuesta no se aplica en mi caso OSX.

De mi investigación, aprendí que los encabezados mencionados son "encabezados C" para compilar la aplicación. He instalado los paquetes que he encontrado en pip que tienen encabezados C en su descripción, pero ningún éxito. Le agradecería enormemente si puede orientarme en la dirección correcta.

Respuesta

12

Lo más probable es que no tenga las herramientas de línea de comandos instaladas.

La forma más fácil de instalarlos es abrir Xcode ir a las preferencias, Descargas, ficha Componentes -> Herramientas de línea de comandos (Instalar)

+3

En XCode 5 ya no es posible instalar las herramientas de línea de comandos con dicho menú. Sin embargo, la ejecución de 'xcode-select --install' desde la consola instalará las herramientas de línea de comandos. – Pascal

1

Pip no sirve de ayuda porque instala paquetes de python. Los encabezados de Python generalmente se instalan en todo el sistema. De acuerdo con this XCode instala los encabezados de Python

+0

Olvidé mencionar que mi objetivo es instalar Mercurial en un entorno virtual, no en todo el sistema. Veo que hay una actualización disponible para Xcode. Continuaré y veré si eso ayuda. Gracias por el enlace a una pregunta relacionada scytale. –

+0

es probable que desee instalar el sistema de encabezados python wide – scytale

22

que tenían el mismo problema en Ubuntu. He instalado el paquete "python-dev" usando los siguientes comandos ..

sudo apt-get install python-dev 

Creo que la instalación de la misma ayudaría para cualquier distribución de Linux.

+1

Eso es todo lo que se necesita – securecurve

+0

Funcionó para mí en Ubuntu 14.04 – KevinL

+0

también funcionó para mí 16.04 – Tom

Cuestiones relacionadas