Skip to content

'Usable distlib' error when building Docker container #10

@crashingstatic

Description

@crashingstatic

Bug 1:

Failure when running ./configure --disable-docs during QEMU compile task:

3.62 2025-09-24 02:17:13 (9.44 MB/s) - 'qemu-9.0.0.tar.xz' saved [129789856/129789856]
13.62 
13.62 + tar -xJf ./qemu-9.0.0.tar.xz
18.93 + mv ./qemu-9.0.0 /opt/qemu
18.93 + rm ./qemu-9.0.0.tar.xz
18.94 + cd /opt/qemu
18.94 + ./configure --disable-docs
18.94 Using './build' as the directory for build output
19.07 python determined to be '/usr/bin/python3'
19.07 python version: Python 3.10.12
19.13 mkvenv: Creating non-isolated virtual environment at 'pyvenv'
19.28 
19.28 *** Ouch! ***
19.28 
19.28 a usable distlib could not be found, please install it 
19.28 
19.28 
------
ERROR: failed to solve: executor failed running [/bin/sh -c set -eux;     wget "https://download.qemu.org/qemu-${QEMU_VERSION}.tar.xz";     tar -xJf ./qemu-${QEMU_VERSION}.tar.xz;     mv ./qemu-${QEMU_VERSION} /opt/qemu;     rm ./qemu-${QEMU_VERSION}.tar.xz;     cd /opt/qemu;     ./configure --disable-docs;     make -j "$(nproc)";     make install;     installdir=`mktemp -d`;     make install DESTDIR="${installdir}";     tar -czvf qemu-install.tar.gz -C "${installdir}" .;     rm -rf "${installdir}"]: exit code: 1

Recommended fix

Change:

# Install QEMU
ARG QEMU_VERSION=9.0.0
RUN set -eux; \
    wget "https://download.qemu.org/qemu-${QEMU_VERSION}.tar.xz"; \
    tar -xJvf ./qemu-${QEMU_VERSION}.tar.xz; \
...SNIP...

to

# Install QEMU
ARG QEMU_VERSION=9.0.0
RUN set -eux; \
    apt-get install --no-install-recommends -y python3-distlib; \
    wget "https://download.qemu.org/qemu-${QEMU_VERSION}.tar.xz"; \
...SNIP...

Bug 2:

 => ERROR [build-deps 15/15] RUN cargo install --locked mdbook just                      54.8s 
------                                                                                         
 > [build-deps 15/15] RUN cargo install --locked mdbook just:                                  
0.465     Updating crates.io index                                                             
0.734 error: cannot install package `mdbook 0.4.52`, it requires rustc 1.82 or newer, while the
 currently active rustc version is 1.80.0                                                      
0.734 `mdbook 0.4.48` supports rustc 1.77

Recommended fix

change
RUN cargo install --locked mdbook just
to

RUN cargo install --locked --version 0.4.48 mdbook; \ 
          cargo install --locked just

Steps to repro bug

  1. cd TraceAnalysis
  2. docker build --target dist --tag traceanalysis/dist .

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions