我无法弄清楚是什么导致了我在制作项目时不断遇到的错误:
i686-apple-darwin11-llvm-g++-4.2: -lncurses: linker input file unused because linking not done
我的 make 文件如下所示:
CC = g++
LIB_FLAGS = -l ncurses
FLAGS = $(LIB_FLAGS)
DEPENDENCIES = window.o element.o
# FINAL OUTPUTS
main: main.cpp $(DEPENDENCIES)
$(CC) $(FLAGS) -o main.out main.cpp $(DEPENDENCIES)
# MODULES
window.o: main.h classes/window.cpp
$(CC) $(FLAGS) -c classes/window.cpp
element.o: main.h classes/element.cpp
$(CC) $(FLAGS) -c classes/element.cpp
# CLEAN
clean:
rm -rf *.o
rm main.out
一切都编译正常,但我只是好奇是什么导致了这个错误消息以及它的含义。
您将链接器选项与编译器调用一起传递-c
,这意味着不执行链接,从而-l
选项未使用。就你而言,你的LIB_FLAGS
不应该在FLAGS
,而是在main: ...
rule:
main: main.cpp
$(CC) $(FLAGS) $(LIB_FLAGS) ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)