我目前正在进行一项任务,要求我构建一个
的Makefile所以我为此编写了大部分代码,但是当我尝试将.o用于trig文件夹中的trig函数时,我一直都会遇到错误。错误是
trig/cos330.c:1:10: fatal error: 'math330.h' file not found
这只是我需要帮助的最后一部分!有人能给我一些关于我能做什么的提示吗?谢谢!
all:
mkdir -p ./include
mkdir -p ./lib
cp math330.h ./include
gcc -l ./include/ -c trig/*.c
gcc -l ./include/ -c exp/*.c
mv *.o ./lib/
ar r libmath.a lib/*
mv libmath.a lib/
gcc -l ./include/ cli/cli.c -L ./lib -lmath -lm
clean:
rm -rf include
rm -rf lib
rm a.out
答案 0 :(得分:1)
指定包含目录的选项是大写I(I
),而不是小写L(l
)。
gcc -I ./include …
小写的ell表示库名。给定-l ./include
,可怜的链接器会有精神分裂的时间寻找要链接的库lib./include.a
或lib./include.so
(可能在./lib
目录中),它可能不会'找到它。但它没有那么远。