如果我有两个具有相同库名但存储在不同目录中的库(并且它们可能包含不同的代码),并且我在makefile中的LDFLAGS变量中列出了两个目录,那么链接器如何知道首先在哪里查找哪个目录库可以用吗?
LDFLAGS+= \
-L${INSTALL_DIR}/lib\
-L${EVO_INSTALL_DIR}/lib\
它会首先在INSTALL_DIR路径中还是在EVO_INSTALL_DIR路径中查找?
答案 0 :(得分:3)
INSTALL_DIR
。它将按照列出的顺序查看。
顺便说一句,它是你的链接器(可能和你的编译器一样的程序)做出这个选择,而不是Makefile。 Make(正在读取你的Makefile)只有运行构建工具。