Question

Here is a little problem that cannot be resolved by me such a Linux program newbie.

Now I have a main.cpp program which need to be compiled, there is a

#include "Down.h"

in the front of file.

Actually, this header file exist in the other directory, which locates at ../../../include directory. Besides, some other header files needed by Down.h also locate at this ../../../include directory.

Here is the problem, I compile main.cpp with command

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

However, it gives lots of error info which means it is not correct to be done like this.

Should I also change the include declaration into this one?

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

May you please leave me with some advice? Thanks.

Edit:

After using g++ -I ../../../include main.cpp, I get the following errors:

$ 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 
Was it helpful?

Solution

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

See that leading slash after the -I? That's an absolute path.
Change it to a relative path (shown below) and it'll work OK.

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

OTHER TIPS

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

ought to work

Try to use -v option:

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

And check that list of directories to search for include files contains your folder and there is no complains that this folder is absent. If there is this sort of complains correct the path that you give after -I

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top