Makefile make:为“添加函数”;“没有规则”;目标

Makefile make:为“添加函数”;“没有规则”;目标,makefile,Makefile,我有一个Makefile,它使用很多静态文件,例如: /mystaticpath/somepath/official\u gpl\u包-0.1.2.tar.gz 我在几台计算机上使用这个Makefile,并且我不需要所有计算机上的所有包。(这就是制作的全部要点) 无论如何,我想做的是把所有东西都放在一个集中式服务器上的/mystaticpath中,并根据需要下载包 换句话说,无论何时make遇到缺少的源文件(“无规则”-错误),它都应该运行一个脚本,然后重试。该脚本需要缺少的文件名作为参数,并从

我有一个Makefile,它使用很多静态文件,例如:

/mystaticpath/somepath/official\u gpl\u包-0.1.2.tar.gz

我在几台计算机上使用这个Makefile,并且我不需要所有计算机上的所有包。(这就是制作的全部要点)

无论如何,我想做的是把所有东西都放在一个集中式服务器上的/mystaticpath中,并根据需要下载包

换句话说,无论何时make遇到缺少的源文件(“无规则”-错误),它都应该运行一个脚本,然后重试。该脚本需要缺少的文件名作为参数,并从集中式服务器下载该文件,因此从make的角度来看,该脚本是/mystaticpath中可能需要的所有内容的通用创建者


有人知道make是否可以做到这一点吗?

您的设计让我脖子后面的小头发竖起来,但请尝试一下:

/mystaticpath/%:
    retrieve_script $@

所有“丢失的文件”最后是否会有一个模式,如
.tar.gz
.tar.bz2
,以便于编写通配符规则?不,但所有文件都会被一个固定路径引用,即“/mystaticpath”你不敢批评我的设计!非常感谢,这正是我所需要的:-)