Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I use gcc's -I command to add recursive folders

Is there a way to use gcc's -I command and add all the paths to search path by giving a root directory?

I'm trying to use :!gcc -E myfile.c to view macro expansions, but myfile.c includes a whole bunch of other header files in different directories, and because I'm executing this command in vim, so I don't want to call a makefile, is there anyway to do this?

like image 537
shengy Avatar asked Sep 06 '12 03:09

shengy


2 Answers

If you are using Apple's GCC (or Clang), then you can use the following approach (which appears to be an extension):


the parameter's suffix will need /**

-IMON_DIRECTORY/**

Now everything under MON_DIRECTORY/ may be searched.

Obviously, this could hurt your build times and it can result in inclusion of the wrong file when files have the same name. So... use it sparingly!

like image 92
justin Avatar answered Sep 18 '22 23:09

justin


gcc has various ways to control the include search path, but I see nothing providing what you want. Note that you can use environment variables for that, it could be more convenient for you than the alternatives.

like image 23
AProgrammer Avatar answered Sep 18 '22 23:09

AProgrammer