【发布时间】:2021-04-27 12:46:45
【问题描述】:
我正在尝试使用 shell 脚本创建一个静态库。
为了创建库,我使用了以下脚本:
gcc -c -Wall -Wextra -Werror *.c
ar -cr libft.a *.o
5 个 .c 文件中有 5 个不同的功能。
现在我想测试这个库并创建了一个包含以下内容的 main.c 文件:
#include "libft.a"
int main(void)
{
ft_putstr("hello");
}
编译 main.c(使用 gcc main.c)返回 419 警告和至少 20 个错误,如下所示:
./libft.a:4:492: warning: null character ignored [-Wnull-character]
...<U+0000>UH<89><E5>H<83><EC><U+0010>@<88>}<FF><BF><U+0001><U+0000><U+0000><U+0000>H<8D>u...
在此之前,我使用的 .h 文件运行良好,但这次我不应该创建 .h 文件,所以我不知道该怎么做。
【问题讨论】:
-
仅包含
.h文件。始终为要从其他.c文件调用的函数编写头文件。.a将提供给链接器。