- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我似乎无法在网上找到任何此类示例,而且它似乎对我不起作用。您可以在具有两个匹配依赖项的 make 文件中设置模式规则吗?
例如
%.sas7bdat: %.sas %.dat
# build %.sas7bdat using %.sas and %.dat
make: *** No rule to make target `sip84fp.sas7bdat', needed by `sipp84'. Stop.
%.sas7bdat: %.sas
最佳答案
是的,静态模式规则和隐式模式规则都可以有多个包含 %
的先决条件。引用模式词干。
隐式模式规则与静态模式规则或普通的非模式规则的不同之处在于,它们仅在没有先决条件(“无条件地制作这个东西”)或先决条件存在时才适用。
也就是说,如果有一个需要构建的target,比如sip84fp.sas7bdat
需要更新,那么确实是模式规则%.sas7bdat: %.sas %.dat
是候选人。但是进行了检查:sip84fp
将词干插入先决条件模式以生成 sip84fp.sas sip84fp.dat
.这两个都必须存在。如果它们不存在,则不考虑该规则,并继续搜索其他规则。
这就是为什么最后你会收到一条关于“无规则”的消息:这实际上意味着在忽略所有不适用的隐式规则后没有留下任何规则。
相比之下,在静态模式规则或普通规则下,如果目标与规则匹配,并且前提条件不存在,则必须更新前提条件。例如,如果您有 foo.o: foo.c
和 foo.c
不存在,规则不能被丢弃,因为它不是隐含的:该规则必须用于 foo.o
.然后,Make 将查找构建 foo.c
的规则。 (并且可能找不到:错误将是没有规则可以制作 foo.c
,而不是 foo.o
)。
看题目Implicit Rule Search Algorithm在 GNU Make 手册中。
如果 .dat
是预期行为文件可能不存在,您必须以其他方式表达。例如,一种方法是使用一些外部依赖生成来制定许多具体的形式规则:
foo.sas7bdat: foo.dat
foo.d
文件和
include
它进入
Makefile
.如果您有一个名为
TARGETS
的变量其中包含所有
.sas7bdat
的名称文件,你可以包含所有的
.d
像这样的依赖文件:
-include $(patsubst %.sas7bdat,%.d,$(TARGETS))
%.o: %.c %.h
# ... build steps
foo.c
有一个
foo.h
,因此该规则不适用于此类情况。相反,我们有:
%.o: %.c
foo.o
取决于
foo.h
在别处表达。隐式规则仅匹配主要交付物:目标文件和翻译单元的“根”文件。
关于具有两个或多个依赖项的 Makefile 模式规则 %.sas7bdat : %. sas %.dat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28355879/
该代码提示用户选择一个 Excel 文件和五个不同的 DAT 文件。 Excel 文件被加载到工作表上,然后应该为每个要导入的 DAT 文件添加新工作表。 Excel 文件正确加载,但程序在第一次尝试
我尝试在 Three.js 项目中使用 dat.gui 来允许打开和关闭场景中各种元素的可见属性。从功能上来说,这工作得很好。然而,我遇到的问题是因为我正在为场景中每个 child 的可见属性创建一个
我正在构建一个折纸模拟器,我希望能够使用 dat.gui slider “折叠”纸张。我还想包括轨道控制。 但是,当我单击 slider 并随后将鼠标移出 dat.gui 窗口时,轨道控件已被触发,导
我基本上试图写入/读取 C 子文件夹中的文件。有问题的文件夹位于 C:/users/me/Test/ 。下面是我的尝试的一个例子。 已包含在内。 DIR *dirPS = opendir("/
我在 MorphTargets 上使用 dat.gui。默认情况下,GUI 将 0 作为最小值,将 1 作为最大值,我希望它们显示为我各自的值,例如:0 为 10,1 为 20。 我该怎么做? 最佳答
#include #include struct stud { int rollno; char name[10]; char add[10]; }; void main() {
1) 我正在开发一个有 2 个 slider 的 dat.GUI 应用程序。我想在另一个更改时重置一个。例如: var FizzyText = function() { this.slider
我正在尝试在代码中使用 DAT.gui 来控制 third.js 上的摄像头 我在 index.html 文件中包含以下内容。 我确保从 build 文件夹获取文件 当我在 my.js 文件中使用以
我有一个二进制文件格式.dat。我想将其转换为 png 或 jpg 格式,我尝试使用 numpy.loadtxt() 对其进行解码以获取数组列表,然后将其保存为 png 或 jpg 格式。但是当我执行
我有一个 Visual Studio 2010 解决方案,一周前两个文件神秘地出现在根解决方案文件夹中,名为 Index.dat 和 Storage.dat。它们的大小分别为 28 字节和 512 字
前几天开始下载了 http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz http://geoli
我的一个网站上有一个文件 GeoIPCity.day。最初的开发人员告诉我这是来自 maxmind.com 的免费文件,我应该每个月更新它。我查看了 maxmind.com 并没有找到具有完全相同名称
我陷入了一个奇怪的境地,我必须创建一个名为 abc.dat 的 .dat 文件,但问题是,当我创建它时,然后在我的 c: 驱动器中,我检查扩展名为 .dat 的文件没有被创建扩展名为 _auto_fi
我有一个很长的 3 列数值数据表。例如,它的一小部分看起来像这样: -5.3986816409999996e+00 8.3394692357616169e-23 2.2891221151890116e
我正在从服务器上提取带有附件的电子邮件,并根据特定条件将它们放入文件夹中。这对于以纯文本编码发送的电子邮件没有问题,但众所周知,如果它们以富文本格式发送,则附件会转换为 winmail.dat 格式。
实例如下: php" id="highlighter_878313"> ?
如下所示: ? 1
嗨,我是新来的,也是 R 的初学者, 我的问题: 如果我在 R 中有多个文件(test1.dat,test2.dat,...)可以使用,我使用此代码读取它们 filelist <- list.file
我尝试使用 dat.GUI 创建多个具有相同名称“ShowCoord”的按钮,这可能吗?我目前拥有的是: for (i = 0; i 注意:这只是一个提示,我无法从您的代码中得出更多结论。
我有以下 df 其中 num, chr, num dat a idat 1 20200101 h 20200101 2 20200113 g 20200113 3 2020021
我是一名优秀的程序员,十分优秀!