Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
makefile中VPATH的行为_Makefile - Fatal编程技术网

makefile中VPATH的行为

makefile中VPATH的行为,makefile,Makefile,据我所知,VPATH变量可以保存需要编译的源文件的搜索路径列表。因此,我在相同的上下文中使用VPATH,如下面的示例代码片段所示 SFILES= src1.c src2.c src3.c VPATH= $(PATH-1)/src 列出的源代码存在于Makefile所在的我的当前目录以及$(PATH-1)/src中。当我给出“make”时,我看到当前目录中的源代码优先于VPATH 除了删除/重新定位当前目录中的源之外,是否还有其他方法可以覆盖此行为。恐怕答案是否定的。GNUmake文档:如果当前

据我所知,VPATH变量可以保存需要编译的源文件的搜索路径列表。因此,我在相同的上下文中使用VPATH,如下面的示例代码片段所示

SFILES= src1.c src2.c src3.c
VPATH= $(PATH-1)/src
列出的源代码存在于Makefile所在的我的当前目录以及$(PATH-1)/src中。当我给出“make”时,我看到当前目录中的源代码优先于VPATH


除了删除/重新定位当前目录中的源之外,是否还有其他方法可以覆盖此行为。

恐怕答案是否定的。GNU
make
文档:如果当前目录中不存在列为目标或先决条件的文件,make在VPATH中列出的目录中搜索具有该名称的文件

SFILES=$(PATH-1)/src1.c$(PATH-1)/src2.c$(PATH-1)/src3.c
。我会尽力让你知道的