我在为 json 编译不同的库时遇到了太多问题,最后我得到了一个已经编译好的 json 库,它是 cJSON 可以与我的项目链接,但是当我下载它时,并将它与一个测试 c 文件链接,例如:
//file1.c
#include "cJSON.h"
...
...
...
然后我使用命令通过 gcc 编译它:
gcc file1.c -lcJSON
它返回:
file1.c:7:19: fatal error: cJSON.h: No such file or directory
#include "cJSON.h"
最佳答案
好吧,经过几次尝试,我终于成功地找出问题并解决了它。因为 cJSON 是一个静态库,所以我不能执行动态链接,如:-lcJSON
,编译 file1.c 并将 cJSON lib 链接到它的完美方法是:
- 将cJSON.c和cJSON.h文件添加到file1.c的同一目录下。
- 在 file1.c 中包含“cJSON.h”。
- 执行命令
gcc cJSON.c file1.c -lm
。
终于编译成功。
关于cJSON.h : No such file or directory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33981459/