如何在gcc中编译一个包含头文件的C程序?

Rit*_*nka 8 c gcc compilation header

我想在gcc中编译一个C程序,它有我的2个头文件.

我正在使用命令:

gcc UDP_Receive.c -o UDP_Receive -lm

编译它但我得到一个错误,指出"UDP_Data.h:没有这样的文件或目录"

如何告诉编译器包含这些头文件?

头文件:

#include"UDP_Data.h"

#include"Crypt.h"

谢谢,Ritesh

Eri*_*rik 7

使用-Idirectory添加包含路径,或者使你的#include语句中使用相对路径.

编辑:还要注意#include文件名在许多平台上都区分大小写.

编辑2:#include "UDP_Data.h"不使用#include <UDP_Data.h>

  • 文件名是否完全是`UDP_Data.h`?不是例如`UDP_data.h`? (2认同)

Ski*_*izz 5

您告诉编译器要包含该文件,其行如下所示:

#include "UDP_Data.h"
Run Code Online (Sandbox Code Playgroud)

问题是编译器找不到该文件,并且不要忘记某些平台在文件名方面是区分大小写的,因此"UDP_data.h"与"UDP_Data.h"不是同一个文件.默认情况下,编译器会在几个地方搜索,但您需要使用命令行选项为其搜索添加额外的目录.确切的选项将取决于编译器,对于gcc它是:

-I<directory>
Run Code Online (Sandbox Code Playgroud)