当前位置: 技术问答>linux和unix
include *.h 與gcc的問題
来源: 互联网 发布时间:2016-03-28
本文导语: 我從一個程序的source code 取出我需要的部份 用gcc 編譯時會出現MAX_STR_LEN未定義,其大概的位置如下 ,原始程序可用make 編譯成功,但在我的程序是直接下gcc的命令 想知道這兩個有什麼分別呢..,如有不清楚的部份我會在...
我從一個程序的source code 取出我需要的部份
用gcc 編譯時會出現MAX_STR_LEN未定義,其大概的位置如下
,原始程序可用make 編譯成功,但在我的程序是直接下gcc的命令
想知道這兩個有什麼分別呢..,如有不清楚的部份我會在補充,thx
A.h
char ip[MAX_STR_LEN];
A.c
#include "c.h"
C.h
#define MAX_LEN
main.c
#include "C.h"
gcc -g -Wall A.h A.c main.c -o update
用gcc 編譯時會出現MAX_STR_LEN未定義,其大概的位置如下
,原始程序可用make 編譯成功,但在我的程序是直接下gcc的命令
想知道這兩個有什麼分別呢..,如有不清楚的部份我會在補充,thx
A.h
char ip[MAX_STR_LEN];
A.c
#include "c.h"
C.h
#define MAX_LEN
main.c
#include "C.h"
gcc -g -Wall A.h A.c main.c -o update
|
估计是头文件的路径没指定
用下面的命令试试
gcc -g -Wall -I../inc A.c main.c -o update
注意把C.h、 A.h 都放在../inc目录下面。
反正-I后面跟上头文件所在目录就对了。
用下面的命令试试
gcc -g -Wall -I../inc A.c main.c -o update
注意把C.h、 A.h 都放在../inc目录下面。
反正-I后面跟上头文件所在目录就对了。