[debhelper-devel] error: binary build with no binary artifacts found; .buildinfo is meaningless

Niels Thykier niels at thykier.net
Wed Jul 19 19:57:00 UTC 2017


Gunter Königsmann:
> [...]
>> I hope this helps. :)  If this does not work, please provide a build log
>> and the debian directory you used.
>>
> 
> The build log was too long that I would dare to send it to a mailing
> list => It can be found at http://physikbuch.de/maxima/buildlog.txt
> One day they will regret that they offered me unlimited webspace ;-)
> 
> Thanks in advance,
> and
> Kind regards,
> 
>   Gunter.
> 

This message from the log:

"""
 fakeroot debian/rules binary
make: 'binary' is up to date.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
"""

sounds like there is a file or directory called "binary" in the
directory (when "debian/rules binary" is called).  This triggers an
unfortunate corner-case where make says "the file/dir exists, ergo I
don't have to do anything".  Sadly, by doing nothing it avoids building
the debs that we want.


If this is the case, then you work around this by either:

 * Ensure there is no file/dir with the same name as one of the
   mandatory debian/rules targets, OR

 * Use ".PHONY" Makefile targets[1].


The "TL;DR" version of the latter is something like adding the following
makefile snippet to debian/rules:

"""
.PHONY: binary
binary:
	dh $@  --parallel
"""

(Alternatively, you can replace the "%:" line with an explicit list of
all the mandatory targets and plus the .PHONY line).  Though admittedly,
it is taken from memory and may have silly mistakes/bugs caused by faded
memories. :)

Thanks,
~Niels

[1] https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html




More information about the debhelper-devel mailing list