* [PATCH] tests/docker: Use --arch-only when building Debian cross images
@ 2021-02-23 17:09 Philippe Mathieu-Daudé
2021-02-23 18:28 ` Alex Bennée
0 siblings, 1 reply; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-23 17:09 UTC (permalink / raw)
To: qemu-devel
Cc: Fam Zheng, Philippe Mathieu-Daudé, Michael Tokarev,
Philippe Mathieu-Daudé, Christian Ehrhardt, Alex Bennée
When building a Docker image based on debian10.docker on
a non-x86 host, we get:
[2/4] RUN apt update && DEBIAN_FRONTEND=noninteractive eatmydata apt build-dep -yy qemu
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
builddeps:qemu : Depends: gcc-s390x-linux-gnu but it is not installable
Depends: gcc-alpha-linux-gnu but it is not installable
E: Unable to correct problems, you have held broken packages.
Fix by using the --arch-only option suggested here:
https://bugs.launchpad.net/ubuntu/+source/qemu/+bug/1866032/comments/1
Suggested-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
tests/docker/dockerfiles/debian-all-test-cross.docker | 2 +-
tests/docker/dockerfiles/debian10.docker | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
index dedcea58b46..593b7ef1023 100644
--- a/tests/docker/dockerfiles/debian-all-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
@@ -11,7 +11,7 @@ FROM qemu/debian10
# What we need to build QEMU itself
RUN apt update && \
DEBIAN_FRONTEND=noninteractive eatmydata \
- apt build-dep -yy qemu
+ apt build-dep --arch-only -yy qemu
# Add the foreign architecture we want and install dependencies
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
diff --git a/tests/docker/dockerfiles/debian10.docker b/tests/docker/dockerfiles/debian10.docker
index 9d42b5a4b81..d034acbd256 100644
--- a/tests/docker/dockerfiles/debian10.docker
+++ b/tests/docker/dockerfiles/debian10.docker
@@ -32,6 +32,6 @@ RUN apt update && \
psmisc \
python3 \
python3-sphinx \
- $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
+ $(apt-get -s build-dep --arch-only qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
ENV FEATURES docs
--
2.26.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] tests/docker: Use --arch-only when building Debian cross images
2021-02-23 17:09 [PATCH] tests/docker: Use --arch-only when building Debian cross images Philippe Mathieu-Daudé
@ 2021-02-23 18:28 ` Alex Bennée
2021-02-23 18:58 ` Philippe Mathieu-Daudé
0 siblings, 1 reply; 3+ messages in thread
From: Alex Bennée @ 2021-02-23 18:28 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Fam Zheng, Philippe Mathieu-Daudé, Michael Tokarev,
qemu-devel, Christian Ehrhardt
Philippe Mathieu-Daudé <f4bug@amsat.org> writes:
> When building a Docker image based on debian10.docker on
> a non-x86 host, we get:
>
> [2/4] RUN apt update && DEBIAN_FRONTEND=noninteractive eatmydata apt build-dep -yy qemu
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Some packages could not be installed. This may mean that you have
> requested an impossible situation or if you are using the unstable
> distribution that some required packages have not yet been created
> or been moved out of Incoming.
> The following information may help to resolve the situation:
>
> The following packages have unmet dependencies:
> builddeps:qemu : Depends: gcc-s390x-linux-gnu but it is not installable
> Depends: gcc-alpha-linux-gnu but it is not installable
> E: Unable to correct problems, you have held broken packages.
>
> Fix by using the --arch-only option suggested here:
> https://bugs.launchpad.net/ubuntu/+source/qemu/+bug/1866032/comments/1
>
> Suggested-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> tests/docker/dockerfiles/debian-all-test-cross.docker | 2 +-
> tests/docker/dockerfiles/debian10.docker | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
> index dedcea58b46..593b7ef1023 100644
> --- a/tests/docker/dockerfiles/debian-all-test-cross.docker
> +++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
> @@ -11,7 +11,7 @@ FROM qemu/debian10
> # What we need to build QEMU itself
> RUN apt update && \
> DEBIAN_FRONTEND=noninteractive eatmydata \
> - apt build-dep -yy qemu
> + apt build-dep --arch-only -yy qemu
This is just going to fail later on when you discover the cross
compilers are only packaged for amd64. Perhaps we need to mark this one
as amd64 only somehow?
>
> # Add the foreign architecture we want and install dependencies
> RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> diff --git a/tests/docker/dockerfiles/debian10.docker b/tests/docker/dockerfiles/debian10.docker
> index 9d42b5a4b81..d034acbd256 100644
> --- a/tests/docker/dockerfiles/debian10.docker
> +++ b/tests/docker/dockerfiles/debian10.docker
> @@ -32,6 +32,6 @@ RUN apt update && \
> psmisc \
> python3 \
> python3-sphinx \
> - $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
> + $(apt-get -s build-dep --arch-only qemu | egrep ^Inst | fgrep
> '[all]' | cut -d\ -f2)
This bit is fine, without the all-test-cross change:
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
--
Alex Bennée
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] tests/docker: Use --arch-only when building Debian cross images
2021-02-23 18:28 ` Alex Bennée
@ 2021-02-23 18:58 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-02-23 18:58 UTC (permalink / raw)
To: Alex Bennée
Cc: Fam Zheng, Philippe Mathieu-Daudé, Michael Tokarev,
qemu-devel, Christian Ehrhardt
On 2/23/21 7:28 PM, Alex Bennée wrote:
> Philippe Mathieu-Daudé <f4bug@amsat.org> writes:
>
>> When building a Docker image based on debian10.docker on
>> a non-x86 host, we get:
>>
>> [2/4] RUN apt update && DEBIAN_FRONTEND=noninteractive eatmydata apt build-dep -yy qemu
>> Reading package lists... Done
>> Building dependency tree
>> Reading state information... Done
>> Some packages could not be installed. This may mean that you have
>> requested an impossible situation or if you are using the unstable
>> distribution that some required packages have not yet been created
>> or been moved out of Incoming.
>> The following information may help to resolve the situation:
>>
>> The following packages have unmet dependencies:
>> builddeps:qemu : Depends: gcc-s390x-linux-gnu but it is not installable
>> Depends: gcc-alpha-linux-gnu but it is not installable
>> E: Unable to correct problems, you have held broken packages.
>>
>> Fix by using the --arch-only option suggested here:
>> https://bugs.launchpad.net/ubuntu/+source/qemu/+bug/1866032/comments/1
>>
>> Suggested-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>> tests/docker/dockerfiles/debian-all-test-cross.docker | 2 +-
>> tests/docker/dockerfiles/debian10.docker | 2 +-
>> 2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
>> index dedcea58b46..593b7ef1023 100644
>> --- a/tests/docker/dockerfiles/debian-all-test-cross.docker
>> +++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
>> @@ -11,7 +11,7 @@ FROM qemu/debian10
>> # What we need to build QEMU itself
>> RUN apt update && \
>> DEBIAN_FRONTEND=noninteractive eatmydata \
>> - apt build-dep -yy qemu
>> + apt build-dep --arch-only -yy qemu
>
> This is just going to fail later on when you discover the cross
> compilers are only packaged for amd64.
Yes, I wonder if this is a Debian bug (we can still install cross
gcc for the host target -- which is pointless) and the cross libc.
> Perhaps we need to mark this one as amd64 only somehow?
OK.
>>
>> # Add the foreign architecture we want and install dependencies
>> RUN DEBIAN_FRONTEND=noninteractive eatmydata \
>> diff --git a/tests/docker/dockerfiles/debian10.docker b/tests/docker/dockerfiles/debian10.docker
>> index 9d42b5a4b81..d034acbd256 100644
>> --- a/tests/docker/dockerfiles/debian10.docker
>> +++ b/tests/docker/dockerfiles/debian10.docker
>> @@ -32,6 +32,6 @@ RUN apt update && \
>> psmisc \
>> python3 \
>> python3-sphinx \
>> - $(apt-get -s build-dep qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
>> + $(apt-get -s build-dep --arch-only qemu | egrep ^Inst | fgrep
>> '[all]' | cut -d\ -f2)
>
> This bit is fine, without the all-test-cross change:
>
> Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-02-23 19:00 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-02-23 17:09 [PATCH] tests/docker: Use --arch-only when building Debian cross images Philippe Mathieu-Daudé
2021-02-23 18:28 ` Alex Bennée
2021-02-23 18:58 ` Philippe Mathieu-Daudé
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).