Python ./configure no encuentra el compilador de g ++


12

Estoy tratando de compilar Python 3.4.1 en una máquina ARM emulada (con Debian 7). ./configureme da

checking for g++... no

pero g ++ está instalado. Entonces, ¿Cuál podría ser el problema? Sé que no es estrictamente necesario, pero preferiría que makeuse g ++ para el código c ++.


¿Está seguro de que g++está instalado en la máquina en la que está compilando? ¿Qué command -v g++imprime en esa máquina? ¿Cómo instaló g ++ en esa máquina?
Andrew Stubbs

¿Está seguro de que g ++ está instalado en la ubicación a la que apunta el script de compilación?
Ramhound

Que g++ -dumpmachinedice Ejecutar desde el mismo contexto que./configure
ctrl-alt-delor

@AndrewStubbs: root@debian:~/python3-3.4.1# command -v g++/ usr / bin / g ++. Creo que g ++ estaba preinstalado, ya que no he instalado ningún otro paquete relacionado.
Marco Sulla

@Ramhound: Estoy seguro, ya que también está en gcc /usr/bin. Configure encuentra gcc pero no g ++. Desde configurar el código fuente parece que la ruta de búsqueda es exactamente la misma.
Marco Sulla

Respuestas:


11

Solución alterna:

CXX=/usr/bin/g++ ./configure

De todos modos, es muy extraño y parece ser un error en el script de configuración. Parece ser un problema conocido . Oh bien...


EDITAR : Parece que --with-cxx-maines una opción con un propósito diferente. Se requiere en algunas plataformas para admitir módulos de extensión C ++. Actualicé mi respuesta anterior.


Consulte también el informe de problemas en bugs.python.org/issue25946
Karl Richter

2

Puede establecer la ubicación de g ++ manualmente usando una variable de entorno pasada para configurar, como se describe en la ayuda:

Usage: ./configure [OPTION]... [VAR=VALUE]...

Por ejemplo, si está ejecutando configure con un prefijo personalizado, su comando sería:

./configure --prefix=/home/user/.local CXX="/usr/bin/g++"
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.