Pregunta

Aquí hay un pequeño problema que no puedo resolver por mí como un programa de Linux para principiantes.

Ahora tengo un programa main.cpp que necesita ser compilado, hay un

#include "Down.h"

en la parte frontal del archivo.

En realidad, este archivo de encabezado existe en el otro directorio, que se ubica en ../../../include directorio. Además, algunos otros archivos de encabezado que necesita Down.h también se encuentran en este directorio ../../../include.

Aquí está el problema, compilo main.cpp con el comando

g++ -I /../../../include main.cpp

Sin embargo, proporciona mucha información de error, lo que significa que no es correcto hacerlo de esta forma.

¿Debería también cambiar la declaración de inclusión por esta?

#include "../../../include/DownConvert.h"

¿Podría por favor dejarme con algún consejo? Gracias.

Editar:

Después de usar g ++ -I ../../../include main.cpp , obtengo los siguientes errores:

$ g++ -I ../../../include main.cpp 

In file included from ../../../include/DownConvert.h:98,
from main.cpp:92: ../../../include/ResizeParameters.h:4:22: error:
TypeDefs.h: No such file or directory 

In file included from /usr/include/c++/4.4/bits/stl_algo.h:61, 
from /usr/include/c++/4.4/algorithm:62, 
from ../../../include/H2 
¿Fue útil?

Solución

g++ -I /../../../include main.cpp

¿Ves esa barra al principio después del -I ? Ese es un camino absoluto.
Cámbielo a una ruta relativa (que se muestra a continuación) y funcionará bien.

g++ -I ../../../include main.cpp

Otros consejos

g ++ -I ../../../include main.cpp

debería funcionar

Intenta usar la opción -v:

g++ -v -I ../../../include main.cpp

Y compruebe que la lista de directorios para buscar archivos de inclusión contiene su carpeta y no hay quejas de que esta carpeta esté ausente. Si hay este tipo de quejas, corrija la ruta que da después de -I

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top