我使用gcc编译器和Clion IDE处理C代码
因此,我有一个src
文件夹,用于存放.c
代码和include
文件夹的.h
文件,其中包含一堆#define
我的main.c程序中包含一些.h
文件
当我在Clion项目中运行它时,一切正常
但是当我尝试使用命令行运行时(因为我需要命令参数),它说
Fatal Error: MyFunction.h, no such file or directory
MyFunction.h
是我的文件,不是默认的库文件
我在命令行中输入的是$gcc C:\Users\Admin\CLionProjects\project\src\main.c
我得到的是"C:\Users\Admin\CLionProjects\project\src\main.c 10: Fatal Error: MyFunction.h No such file or directory.
然后,我尝试将#include <MyFunction.h>
更改为#include "MyFunction.h"
,希望它可以解决问题,但是没有。
然后我做了一个测试,我在同一.c
文件夹中调用了另一个src
文件的函数,并使用命令行运行main.c
,但是它告诉我该函数是甚至没有定义。
cmd可以识别所有默认的库文件,例如stdio.h
,但我识别的文件都不是。任何想法如何解决这个问题?我知道一定是某种路径错误
答案 0 :(得分:0)
您必须告诉onchange
预处理程序在哪里找到要包含的文件。
您有两种标题:
gcc
中。 #include <header>
中。 预处理程序在标题搜索路径中搜索以查找系统标题。 预处理程序在当前目录中搜索,然后在标头路径中查找本地标头。
您可以使用#include "header"
调用中的-I
选项在标题搜索路径中添加文件夹。
因此,您可以使用以下命令进行编译:
gcc
或
$gcc -I C:\Users\Admin\CLionProjects\project\include C:\Users\Admin\CLionProjects\project\src\main.c