就像,我想我已经接近了……只是不确定我做错了什么,
cfann : main.o
main.o -l libfann
main.o : main.c
gcc -c main.c
clean:
rm -rf *o cfann
我收到此错误:
main.o -l libfann
make: main.o: No such file or directory
make: *** [cfann] Error 1
改变:
cfann : main.o
main.o -l libfann
至:
cfann : main.o
gcc main.o -lfann -L/usr/local/lib -o cfann
这假设 libfann.o 位于 /usr/local/lib 中 - 如果它实际上位于其他位置,请更改上面的 -L 路径。
您需要更换:
cfann : main.o
main.o -l libfann
类似:
cfann : main.o
gcc -o cfann -L/path/to/libs main.o -lfann
-L
允许您指定(多个)路径来搜索库,并且 -l
列出库名称。 lib
通常是您的前缀,以及可能的扩展名,例如 .a
或 .so
。
您的原始 makefile 所做的是尝试将 run
main.o
作为命令,而不是它应该运行的 gcc
。
试试这个
cfann : main.o
main.o : main.c
gcc -c main.c -lfann
clean:
rm -rf *o cfann
或者,也许没有空的 cfanni 行
cfann : main.c
gcc -c main.c -lfann
clean:
rm -rf *o cfann