G ++ -I opción para compilar programa
-
05-07-2019 - |
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
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