gcc: error al intentar ejecutar 'cc1plus': execvp: No existe tal archivo o directorio

18

Soy un novato pero aventurero. Estoy reiniciando Windows, Fedora y Ubuntu 14.04 LTS (todos los 64). Aprendiendo pero no usando dpkg, apt y apt-get. Comenzar a estudiar C ++ usando Ubuntu (el único con gcc instalado). Entonces, en mi primer intento de compilación, ejecuté el comando gcc xy.ccy obtuve lo siguiente:

gcc: error trying to exec 'cc1plus' : execvp: No such file or directory

Así que busqué en mi computadora cc1plus y execvp. Y no encontré ninguno. Solo execvp.3.gz en el directorio /user/share/man/man3y cc1 en /user/lib/gcc/x86_64-linux-gnu/4.8.

Entonces, un montón de trabajo y aprendizaje sobre los captadores y verificadores de paquetes, pero sin coraje para eliminar y reinstalar, etc.

Tiene usted algunas sugerencias?

SailorDon
fuente

Respuestas:

24

Posiblemente le falte el paquete g ++ en su máquina. Abra una terminal e instálela usando el siguiente comando:

sudo apt-get install g++

Para compilar usando g ++ use esto

g++ -o test.o test.cpp

g ++ se puede usar para compilar la fuente C ++, la instalación predeterminada de ubuntu viene con gcc, pero no con g ++.

Está intentando compilar la fuente de C ++ utilizando un compilador de C. Por lo general, gcc compila correctamente el código C ++, pero de forma predeterminada no vincula ninguna biblioteca específica de c ++ (consulte esta respuesta en Desbordamiento de pila ).

Si aparece un mensaje como:, Couldn't find package ...intente los siguientes comandos

sudo apt-get update && sudo apt-get upgrade

entonces

sudo apt-get install g++
Aritra
fuente
6

cc1plus es el backend de c ++ (compilador real) para gcc, si va a programar principalmente en c ++, realmente querrá instalar g ++ (tendrá cc1plus con él). Usando uno, el sistema de paquetes front-end apt-get, synaptic, administrador de software, o varios otros, instalará las dependencias con él.

execvp es una función de programación, el archivo que encontró coincidente es la página man (manual) correspondiente. para verlo abra una terminal y escriba man execvp. Las páginas man a menudo están en línea, y tienen una TONELADA de información en cli y cosas de programación.

carga
fuente