No rule to make target test-image-failure-handler
Magnus Ihse Bursie
magnus.ihse.bursie at oracle.com
Wed May 13 08:10:54 UTC 2020
On 2020-05-13 09:49, Vitaly Provodin wrote:
> Hi all,
>
> Recently, building test-image I got the following message:
>
> $ make test-image
> Building target 'test-image' in configuration 'linux-x86_64-server-release'
> gmake[2]: *** No rule to make target 'test-image-failure-handler', needed by 'test-image'. Stop.
> gmake[2]: *** Waiting for unfinished jobs….
>
>
> Two or three days ago it was built well.
>
> Could somebody explain what happened?
From doc/building.md:
#### Problems with Incremental Rebuilds
Incremental rebuilds mean that when you modify part of the product, only the
affected parts get rebuilt. While this works great in most cases, and
significantly speed up the development process, from time to time complex
interdependencies will result in an incorrect build result. This is the most
common cause for unexpected build problems.
Here are a suggested list of things to try if you are having unexpected
build
problems. Each step requires more time than the one before, so try them in
order. Most issues will be solved at step 1 or 2.
1. Make sure your repository is up-to-date
Run `hg pull -u` to make sure you have the latest changes.
2. Clean build results
The simplest way to fix incremental rebuild issues is to run `make
clean`.
This will remove all build results, but not the configuration or
any build
system support artifacts. In most cases, this will solve build errors
resulting from incremental build mismatches.
3. Completely clean the build directory.
If this does not work, the next step is to run `make dist-clean`, or
removing the build output directory (`$BUILD`). This will clean all
generated output, including your configuration. You will need to re-run
`configure` after this step. A good idea is to run `make
print-configuration` before running `make dist-clean`, as this will
print
your current `configure` command line. Here's a way to do this:
```
make print-configuration > current-configuration
make dist-clean
bash configure $(cat current-configuration)
make
```
4. Re-clone the Mercurial repository
Sometimes the Mercurial repository gets in a state that causes the
product
to be un-buildable. In such a case, the simplest solution is often the
"sledgehammer approach": delete the entire repository, and re-clone it.
If you have local changes, save them first to a different location
using
`hg export`.
/Magnus
>
> Thanks,
> Vitaly
More information about the build-dev
mailing list