我的makefile中有两个.cpp文件:
test1.o : test1.cpp
g++ test1.cpp -o test1.o
test2.o : test2.cpp
g++ test2.cpp -o test2.o
在对test1.cpp和test2.cpp进行更改并在命令行中键入make
之后,只重新编译test1.o
,并且没有对test2.o
执行任何操作。
但是,如果我交换makefile中的两个块,{} {}将自动重新编译,而test2.o
则不会。
似乎我的makefile只跟踪第一个文件。我想知道哪一部分出了问题。
答案 0 :(得分:2)
尝试添加默认目标。一个非常简单的起点:all: test1.o test2.o
答案 1 :(得分:2)
默认情况下<?php
$items = ['2' => 'Full', '4' => 'No', '3' => 'Semi'];
$selected = [2, 3];
$keys = array_keys($items);
foreach($keys as $key){
if (in_array($key, $selected)) {
echo '<input id="checkBox" value="'.$key.'" type="checkbox" checked> '.$items[$key];
}
else{
echo '<input id="checkBox" value="'.$key.'" type="checkbox"> '.$items[$key];
}
}
?>
会在makefile中构建第一件事,如果你不告诉它要构建什么。
您可以运行make
来专门制作,也可以添加假目标,这样它就会默认生成make test1.o test2.o
- 这就是许多makefile
使用
使用all
告诉我.PHONY
不是真正的文件,所以如果您出于某种原因有一个名为all
的文件,它就不会行为不端。
all