[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-trivial] [Qemu-devel] [PATCH] configure: helpfully output pack
Re: [Qemu-trivial] [Qemu-devel] [PATCH] configure: helpfully output package names for some missing dependencies.
Thu, 23 Jan 2014 22:08:10 +1100
Notmuch/0.16 (http://notmuchmail.org) Emacs/24.3.1 (x86_64-redhat-linux-gnu)
Stefan Weil <address@hidden> writes:
> Am 23.01.2014 05:54, schrieb Stewart Smith:
>> diff --git a/configure b/configure
>> index 3782a6a..87303f6 100755
>> --- a/configure
>> +++ b/configure
>> @@ -1532,7 +1532,9 @@ EOF
>> error_exit "zlib check failed" \
>> - "Make sure to have the zlib libs and headers installed."
>> + "Make sure to have the zlib libs and headers installed." \
>> + "Debian/Ubuntu: zlib1g-dev" \
>> + "Fedora/RHEL: zlib-devel"
> Removing that zlib check is on my private todo list since QEMU uses
> glib2, because glib2 already depends on zlib.
It may have some value existing as (at least on Fedora) glib2-devel
depends on libz.so.1 (i.e. zlib) but *not* on zlib-devel, so if we just
checked for glib2 we'd get the lib but not the headers for zlib, thus
having a failing build.
>> @@ -2656,6 +2662,8 @@ EOF
>> # have neither and want - prompt for system/submodule install
>> error_exit "DTC not present. Your options:" \
>> " (1) Preferred: Install the DTC devel package" \
>> + " Ubuntu/Debian: libfdt-dev" \
> The previous line uses a tab character. Replace it by blanks.
ack. Will do.
> Here a small hint might by useful because searching for 'DTC' packages
> will usually fail. What about writing "DTC (libfdt) devel package"?
ack, will do.
>> + " Fedora/RHEL: libfdt-devel" \
>> " (2) Fetch the DTC submodule, using:" \
>> " git submodule update --init dtc"
> I'm not sure whether the file 'configure' is the right place for the
> precise package information. Here are some thoughts:
It's possibly not the ideal place, but I've never found an ideal
place. In other projects I've had the list of package names bitrot in:
- configure output
- some other documentation that ends up on a web site
Pretty much the only place it hasn't bitrotted is puppet manifests and
modules for setting up build machines... which isn't the *ideal* form of
That being said, I've found the package names outputted by configure to
be useful, even if not always perfect.
> * Those help messages are only useful for Debian / Fedore based Linux
> distributions, but not for OpenSuSE and definitely not for other
> hosts (Mac OS X, Windows, BSD).
My guess is that for OSX, Windows and BSD the git submodule option may
be taken more often?
I'll happily add in the OpenSuSE packages.. I'm just a bit less
experienced with OpenSuSE (maybe it's time for a VM though).
> * They only cover a very limited set of packages. For a really useful
> QEMU, lots of more packages are needed.
That was to be my next patch: fleshing out the list and thinking of
somewhere to put the optional package names so that they're easily
> * Package names are not really good interfaces because they tend to
> change over time.
Yep, they do - but this is relatively rare, and usually it's a version
number bump, and the old name usually gives you something to search for
that only gives a couple of results (rather than dozens).
> My personal impression is that the current hints in configure are
> sufficient (with the one exception DTC) and that the QEMU wiki is a
> better place to document build dependencies for the different platforms.
I'd vote for and rather than or, simply because I'm not good enough to
read all the Wiki docs before typing "./configure && make" and I suspect
I'm not the only one in the world :)
- [Qemu-trivial] [PATCH] configure: helpfully output package names for some missing dependencies., Stewart Smith, 2014/01/23
- Re: [Qemu-trivial] [Qemu-devel] [PATCH] configure: helpfully output package names for some missing dependencies., Stefan Weil, 2014/01/23
- [Qemu-trivial] [PATCH v2 0/6] configure: make output and errors more friendly, Stewart Smith, 2014/01/23
- [Qemu-trivial] [PATCH v2 2/6] configure: sort output of configure results alphabetically, Stewart Smith, 2014/01/23
- [Qemu-trivial] [PATCH v2 4/6] configure: add help for --disable-xfsctl and --enable-xfsctl, Stewart Smith, 2014/01/23
- [Qemu-trivial] [PATCH v2 3/6] configure: alphabetize output of --help and separate into groups, Stewart Smith, 2014/01/23
- [Qemu-trivial] [PATCH v2 5/6] configure: add hints to a remedy for feature_not_found errors, Stewart Smith, 2014/01/23
- [Qemu-trivial] [PATCH v2 1/6] configure: add hint of libfdt to DTC dependency not found message, Stewart Smith, 2014/01/23
- [Qemu-trivial] [PATCH v2 6/6] configure: helpfully output package names for some missing dependencies., Stewart Smith, 2014/01/23