开发者

gcc Can't Find a Included Header

I'm using a header called colors.h to organize my source code. The header is like this:

#define DEFAULT 0x07
#define BLACK 0
#define GRAY 7
#define BLUE 9
#define GREEN 10
#define CYAN 11
#define RED 12
#define MAGENTA 13
#define YELLOW 14

I'm putting 开发者_C百科the header at the same directory of the main source code, called kernel.c, and including it like this:

#include <colors.h>

But when I try to compile, I'm getting this:

ubuntu@eeepc:~/Development/Test$ gcc -o kernel.o -c kernel.c -Wall -Wextra -nostdlib -nostartfiles -nodefaultlibs

kernel.c:1:20: error: colors.h: No such file or directory

ubuntu@eeepc:~/Development/Test$

What I can do to solve this?


Use quotes:

#include "colors.h"

Using quotes will look in the same directory first, and then in the specified include paths. Using angle brackets will look in the include paths only.


Angle brackets are used to find a header in the implicit header paths. Headers in explicit paths, including the current directory, need quotes.


#include <colors.h> tells GCC to look where it finds the standard C headers, probably not where you have your header. #include "colors.h tells GCC to look for headers in the current working directory


#include "colors.h"
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜