gcc main.c -o main -I include
Run Code Online (Sandbox Code Playgroud)
我正在创建一个具有以下目录结构的小型 c 应用程序:
应用=>
现在我正在尝试运行包含#include指令的main.c,以将头文件从包含目录和函数调用包含到common和src目录中的.c文件中。我正在使用-I选项,但它仅对一个目录路径指示有用。编译器将如何在所有src、common和include目录中查找以解析调用。请建议我在使用gcc编译时提供一个命令或制作文件以提供多个目录的路径。
-I允许多个选项。目录搜索选项
中的-I选项说明指出:
将目录 dir 添加到要搜索头文件的目录列表的头部。这可用于覆盖系统头文件,替换您自己的版本,因为在系统头文件目录之前搜索这些目录。但是,您不应使用此选项添加包含供应商提供的系统头文件的目录(为此使用 -isystem)。如果您使用多个 -I 选项,则按从左到右的顺序扫描目录;标准系统目录紧随其后。
例如:
gcc main.c -o main -Iinclude -Isrc/include -Icommon/include
请注意,如果main.c使用在另一个.c文件中实现的函数,则其他.c文件也需要编译并链接到最终程序二进制文件中。例如:
gcc main.c src/another.c -o main -Iinclude -Isrc/include -Icommon/include
| 归档时间: |
|
| 查看次数: |
14982 次 |
| 最近记录: |