FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=ON \
&& cmake --build build \
&& cmake --install build
COPY run_qbt.sh /usr/local/bin/run_qbt.sh
RUN chmod +x /usr/local/bin/run_qbt.sh
ENTRYPOINT ["/usr/local/bin/run_qbt.sh"]
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=ON \
&& cmake --build build \
&& cmake --install build
COPY run_qbt.sh /usr/local/bin/run_qbt.sh
RUN chmod +x /usr/local/bin/run_qbt.sh
ENTRYPOINT ["/usr/local/bin/run_qbt.sh"]
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=ON \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent"]
- Exact error message and exit code - E: Unable to locate package qt6-svg-dev - Overall failure exit code: 100 (as shown by the build failure: exit code: 100) - Failing command/step - [2/5] RUN apt-get update && apt-get install -y --no-install-recommends build-essential cmake ninja-build libssl-dev zlib1g-dev libboost-all-dev qt6-base-dev qt6-declarative-dev qt6-svg-dev pkg-config && rm -rf /var/lib/apt/lists/* - Missing packages or files mentioned - qt6-svg-dev not found (Unable to locate package qt6-svg-dev) - Version mismatch / repo context - Base image pinned to ubuntu:jammy-20260217 with digest: sha256:bf7bfa0b43e40076229eec59a254f539fc4803accc2bd9049ecee8bf2da3bd02 - The apt failure occurred on installing qt6-svg-dev for this Ubuntu Jammy snapshot, suggesting qt6-svg-dev is not available in that specific release/repo configuration (potential mismatch between the requested package and the pinned Jammy image).
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent-nox"]
Concerns: Missing Qt development and runtime libraries (e.g., qtbase5-dev, libqt5core5a, libqt5network5) required to build qbittorrent-nox from source. The GUI is disabled, but Qt is typically needed for the core/no-GUI build as well., The image installs only libssl-dev, zlib1g-dev, and libboost-all-dev but not Qt dependencies. The cmake configuration with -DGUI=OFF may still require Qt; the build is likely to fail without Qt dev packages., FROM ubuntu:jammy-20260217 is a dated tag; ensure it resolves in the CI environment or pin to a digest for reproducible builds., COPY . . copies the entire context; consider adding a .dockerignore to avoid large contexts or unintended files.
.git build/ *.o *.so *.a *.log *.tmp *.cache *.dSYM CMakeFiles/ build*/ CMakeCache.txt cmake_install.cmake install_manifest.txt
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=ON \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent"]
Summary (under 1500 chars): - Failing step (Dockerfile): [2/5] RUN apt-get update && apt-get install -y --no-install-recommends build-essential cmake ninja-build libssl-dev zlib1g-dev libboost-all-dev qt6-base-dev qt6-declarative-dev qt6-svg-dev pkg-config && rm -rf /var/lib/apt/lists/* - Exact error message and exit code: - Error: E: Unable to locate package qt6-svg-dev - Exit code: 100 - Docker reported: failed to solve: process "... apt-get install ... qt6-svg-dev ... " did not complete successfully: exit code: 100 - Missing packages/files mentioned: - qt6-svg-dev is not available in the apt repositories used by the base image (ubuntu jammy-20260217). This causes the install step to fail with “Unable to locate package qt6-svg-dev”. - Version mismatch/info: - Base image: ubuntu:jammy-20260217 (Ubuntu Jammy 22.04 with a dated tag). - APT sources shown include jammy, jammy-security, jammy-updates, jammy-backports. - No explicit version mismatch shown, but the specific package qt6-svg-dev is not present in these jammy repos for this image tag.
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=OFF -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent-nox"]
- Failing step (command/step):
- RUN mkdir -p build && cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=OFF -DVERBOSE_CONFIGURE=ON -DGUI=OFF && cmake --build build && cmake --install build
- Exact error message and exit code:
- Error: Package LibtorrentRasterbar >= 1.2.19 not found with CMake or pkg-config.
- Additional notes:
- - Set LibtorrentRasterbar_DIR to a directory containing a
LibtorrentRasterbarConfig.cmake file or add the installation prefix of
LibtorrentRasterbar to CMAKE_PREFIX_PATH.
- - Alternatively, make sure there is a valid libtorrent-rasterbar.pc file in
your system's pkg-config search paths (use PKG_CONFIG_PATH to specify additional search paths if needed).
- Call Stack (most recent call first): cmake/Modules/CheckPackages.cmake:39 (find_libtorrent); CMakeLists.txt:55 (include)
- Result: Configuring incomplete, errors occurred
- Exit code: 1
- Missing packages/files mentioned:
- libtorrent-rasterbar (>= 1.2.19) not found
- The log also shows guidance about LibtorrentRasterbar_DIR or a valid libtorrent-rasterbar.pc in PKG_CONFIG_PATH
- Version mismatch information:
- Required dependency version: LibtorrentRasterbar >= 1.2.19
- Not found in the image, causing the configuration to fail
- Context notes:
- The image attempted to configure with CMake and failed due to the missing libtorrent-rasterbar dependency, not due to a compiler/toolchain mismatch.
- Recommended fix (actionable):
- Install libtorrent-rasterbar development files (>= 1.2.19) or provide CMake with the correct path via LibtorrentRasterbar_DIR or PKG_CONFIG_PATH so CMake/PKG_CONFIG can locate it.FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
libtorrent-rasterbar-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent-nox"]
Summary (under 1500 chars): Failing step - Command: RUN mkdir -p build && cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/USR -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF && cmake --build build && cmake --install build Exact error and exit code - The build failed with exit code 1 during the CMake configure step: -- Checking for module 'libtorrent-rasterbar>=2.0.10' -- Requested 'libtorrent-rasterbar >= 2.0.10' but version of libtorrent is 2.0.5 -- Configuring incomplete, errors occurred! ... CMake Error at cmake/Modules/CheckPackages.cmake:11 (message): Package LibtorrentRasterbar >= 2.0.10 not found with CMake or pkg-config. ... Your system's pkg-config search paths ( PKG_CONFIG_PATH ...) Cause and missing/incorrect packages or files - Missing/incorrect package: Package LibtorrentRasterbar >= 2.0.10 not found with CMake or pkg-config. - Version mismatch: Requested libtorrent-rasterbar >= 2.0.10 but version of libtorrent is 2.0.5 - Related installed package (from the same build log): libtorrent-rasterbar2.0:amd64 is installed at 2.0.5 (not sufficient for the 2.0.10 minimum). Version mismatch info - The log explicitly shows: "Requested 'libtorrent-rasterbar >= 2.0.10' but version of libtorrent is 2.0.5" and the subsequent error: "Package LibtorrentRasterbar >= 2.0.10 not found with CMake or pkg-config." References to files/paths for remediation (from error) - Suggests action to set: - LibtorrentRasterbar_DIR to a directory containing LibtorrentRasterbarConfig.cmake - Or add the installation prefix to CMAKE_PREFIX_PATH - PKG_CONFIG_PATH to include a valid libtorrent-rasterbar.pc Note - The failure occurs during the configure step of the build (CMake), not during the earlier apt-get install steps, which completed.
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
pkg-config git ca-certificates autoconf automake libtool \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
# Build libtorrent-rasterbar (required by qBittorrent) from source (v2.0.11 as used by CI)
RUN apt-get update \
&& apt-get install -y --no-install-recommends pkg-config \
&& rm -rf /var/lib/apt/lists/* \
&& git clone --depth 1 --branch v2.0.11 https://github.com/arvidn/libtorrent.git /tmp/libtorrent \
&& mkdir -p /tmp/libtorrent/build \
&& cd /tmp/libtorrent/build \
&& cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=OFF .. \
&& cmake --build . \
&& cmake --install . \
&& rm -rf /tmp/libtorrent
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
-DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent-nox"]
Concerns: - FROM ubuntu:jammy-20260217 is a dated image tag; ensure the tag exists and remains available to avoid reproducibility issues. - Building libtorrent from source can be time-consuming and may fail due to network or compatibility changes; consider pinning to a known-good libtorrent version and/or using a prebuilt package if CI time is a concern. Failing step: - Step: [5/6] RUN apt-get update && apt-get install -y --no-install-recommends pkg-config && rm -rf /var/lib/apt/lists/* && git clone --depth 1 --branch v2.0.11 https://github.com/arvidn/libtorrent.git /tmp/libtorrent && mkdir -p /tmp/libtorrent/build && cd /tmp/libtorrent/build && cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=OFF .. && cmake --build . && cmake --install . && rm -rf /tmp/libtorrent Exit code: 1 CMake error details: - CMake Error at CMakeLists.txt:547 (add_library): Cannot find source file: deps/try_signal/try_signal.cpp Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h - CMake Error at CMakeLists.txt:547 (add_library): No SOURCES given to target: torrent-rasterbar - CMake Generate step failed. Build files cannot be regenerated correctly. Missing/problematic files: - Missing source file referenced by CMake: deps/try_signal/try_signal.cpp - Additional note: Any sources for the target torrent-rasterbar were not provided (No SOURCES given to target: torrent-rasterbar) Version/mismatch notes: - The build step clones libtorrent from v2.0.11: git clone --depth 1 --branch v2.0.11 https://github.com/arvidn/libtorrent.git /tmp/libtorrent - Build config shows using libtorrent v2.0.11 with -DBUILD_SHARED_LIBS=OFF; environment includes OpenSSL 3.0.2 and Boost 1.74.0, but the failure is due to a missing source file in that version of the repo.
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
pkg-config git ca-certificates \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
# Build libtorrent-rasterbar from source (v2.0.11 with submodules)
RUN git clone --depth 1 --branch v2.0.11 --recurse-submodules https://github.com/arvidn/libtorrent.git /tmp/libtorrent \
&& mkdir -p /tmp/libtorrent/build \
&& cd /tmp/libtorrent/build \
&& cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=OFF .. \
&& cmake --build . \
&& cmake --install . \
&& rm -rf /tmp/libtorrent
# Build qBittorrent-no-GUI
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
-DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent \
.. \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent-nox"]
- Exact error message and exit code
- CMake Error: The source directory "/" does not appear to contain CMakeLists.txt.
- Exit code: 1
- Failing command/step
- Dockerfile step [6/6], the final RUN:
mkdir -p build && cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF -DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent .. && cmake --build build && cmake --install build
- Missing packages or files mentioned
- The error indicates the source directory is "/" and lacks a CMakeLists.txt file. This implies the intended source directory was not at /workspace (where the build runs) and the relative path ".." resolved to the root. In short: CMakeLists.txt is missing from the resolved source directory.
- Version mismatch info
- No version mismatch reported. The log shows:
- Libtorrent repo checked out on branch v2.0.11 (detached HEAD)
- GCC/Compiler: GNU 11.4.0
- OpenSSL: 3.0.2
- Boost: 1.74.0
- CMake: 3.22.1
- Ninja: 1.10.1
- The build of libtorrent itself completed successfully earlier, so the mismatch issue is not the cause here.FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
pkg-config git ca-certificates \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
# Build libtorrent-rasterbar from source (v2.0.11 with submodules)
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
ca-certificates git \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /tmp/*
RUN git clone --depth 1 --branch v2.0.11 --recurse-submodules https://github.com/arvidn/libtorrent.git /tmp/libtorrent \
&& mkdir -p /tmp/libtorrent/build \
&& cd /tmp/libtorrent/build \
&& cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=OFF .. \
&& cmake --build . \
&& cmake --install . \
&& rm -rf /tmp/libtorrent
# Build qBittorrent-no-GUI
RUN cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
-DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent-nox"]
Failing step and exit
- Failing step: [7/7] RUN cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF -DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent && cmake --build build && cmake --install build
- Exit code: 1
- Command that failed (exact):
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
-DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent \
&& cmake --build build \
&& cmake --install build
Exact error message and context
- Could NOT find Boost: Found unsuitable version "1.74.0", but required is at least "1.76" (found /usr/include, )
Call Stack (most recent call first):
/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:592 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.22/Modules/FindBoost.cmake:2360 (find_package_handle_standard_args)
cmake/Modules/CheckPackages.cmake:46 (find_package)
CMakeLists.txt:55 (include)
- Configuring incomplete, errors occurred!
- See also "/workspace/build/CMakeFiles/CMakeOutput.log".
Version mismatch / missing packages mentioned
- Boost version mismatch: Found 1.74.0, but at least 1.76 is required by the build configuration.
- Also shown in the log:
The following REQUIRED packages have been found:
* Threads
* boost_headers (required version == 1.74.0)
* Boost
- This indicates a mismatched Boost stack: boost_headers pins to 1.74.0, while the CMake configure requires Boost >= 1.76.FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build git ca-certificates \
wget tar ca-certificates \
libssl-dev zlib1g-dev \
&& rm -rf /var/lib/apt/lists/*
# Boost is required to be at least 1.76; build Boost from source to ensure version
ENV BOOST_ROOT=/usr/local
WORKDIR /workspace
COPY . .
# Build Boost 1.76+ from source
RUN mkdir -p /tmp/boost && cd /tmp/boost \
&& wget -q https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.gz \
&& tar -xzf boost_1_76_0.tar.gz -C /tmp/boost \
&& cd /tmp/boost/boost_1_76_0 \
&& ./bootstrap.sh --with-libraries=all \
&& ./b2 install --prefix=/usr/local \
&& ldconfig
# Build libtorrent-rasterbar from upstream (v2.0.11) with submodules
RUN git clone --depth 1 --branch v2.0.11 --recurse-submodules https://github.com/arvidn/libtorrent.git /tmp/libtorrent \
&& mkdir -p /tmp/libtorrent/build \
&& cd /tmp/libtorrent/build \
&& cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=OFF .. \
&& cmake --build . \
&& cmake --install . \
&& rm -rf /tmp/libtorrent
# Build qBittorrent-no-GUI
RUN cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF \
-DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent-nox"]
Summary of Docker build error
- Exact error message and exit code
- gzip: stdin: not in gzip format
- tar: Child returned status 1
- tar: Error is not recoverable: exiting now
- The overall step failed with exit code: 2
- Failing command/step
- Step [5/7] RUN mkdir -p /tmp/boost && cd /tmp/boost && wget -q https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.gz && tar -xzf boost_1_76_0.tar.gz -C /tmp/boost && cd /tmp/boost/boost_1_76_0 && ./bootstrap.sh --with-libraries=all && ./b2 install --prefix=/usr/local && ldconfig
- Missing packages or files mentioned
- The failure occurs because the downloaded Boost tarball boost_1_76_0.tar.gz is not gzip format, suggesting the file at the URL may be wrong or the download returned non-tar content (e.g., an HTML page or 404). URL involved:
- https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.gz
- Version mismatch info
- Boost version being downloaded: 1.76.0
- No version mismatch is indicated in the log; the error is due to the downloaded file format, not a version incompatibility.kasmweb/core-ubuntu-jammy (13 stars): Ubuntu Jammy base image for Kasm Workspaces ubuntu (17799 stars): Ubuntu is a Debian-based Linux operating system based on free software. ubuntu/squid (124 stars): Squid is a caching proxy for the Web. Long-term versions maintained by Canonical ubuntu/nginx (140 stars): Nginx, a high-performance reverse proxy & web server. Long-term tracks maintaine kasmweb/ubuntu-jammy-desktop (42 stars): Ubuntu productivity desktop for Kasm Workspaces kasmweb/ubuntu-jammy-dind (7 stars): Docker for Kasm Workspaces ubuntu/bind9 (117 stars): BIND 9 is a very flexible, full-featured DNS system. Long-term versions maintain ubuntu/kafka (60 stars): Apache Kafka, a distributed event streaming platform. Long-term tracks maintaine ubuntu/apache2 (102 stars): Apache, a secure & extensible open-source HTTP server. Long-term tracks maintain ubuntu/zookeeper (14 stars): ZooKeeper maintains configuration information centrally. Long-term tracks mainta
Image ubuntu:jammy-20260217 exists on Docker Hub.
FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
pkg-config git ca-certificates \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
COPY . .
RUN mkdir -p build \
&& cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=ON \
&& cmake --build build \
&& cmake --install build
CMD ["qbittorrent"]
- Exact error message and exit code - E: Unable to locate package qt6-svg-dev - exit code: 100 - Failing command/step - [2/5] RUN apt-get update && apt-get install -y --no-install-recommends build-essential cmake ninja-build libssl-dev zlib1g-dev libboost-all-dev qt6-base-dev qt6-declarative-dev qt6-svg-dev pkg-config git ca-certificates && rm -rf /var/lib/apt/lists/* - Missing packages or files mentioned - qt6-svg-dev (not found in the apt sources for this Ubuntu 22.04 image) - Version mismatch info - None shown. Base image is ubuntu:22.04 (jammy); apt process completed update before the failure, but no version mismatch details are present.
FROM ubuntu:jammy-20260217
# Build qBittorrent from source with GUI disabled to ensure headless/container friendly image
# This image aims to produce qbittorrent-nox but keeps the build steps aligned with the project
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev \
libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
# Copy source and build
WORKDIR /qbittorrent
COPY . /qbittorrent
# Configure, build and install (Qt GUI disabled for headless/container use)
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]
- Exact error message and exit code:
- E: Unable to locate package qt6-svg-dev
- Exit code: 100
- Failing command/step:
- RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev \
libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
- Missing packages or files mentioned:
- qt6-svg-dev is not found in the apt repositories for this base image.
- Note: qt6-base-dev and qt6-declarative-dev are listed among the requested packages, but qt6-svg-dev is the one missing.
- Version mismatch info:
- Base image is Ubuntu jammy (jammy-20260217). The error indicates qt6-svg-dev is not available in jammy's repositories for this build, suggesting the package is not present in these channels for this release (no explicit version mismatch shown beyond that).FROM ubuntu:jammy-20260217
# Build qBittorrent from source with GUI disabled to ensure headless/container friendly image
# This image aims to produce qbittorrent-nox but keeps the build steps aligned with the project
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev \
libboost-all-dev \
qt6-base-dev qt6-declarative-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
# Copy source and build
WORKDIR /qbittorrent
COPY . /qbittorrent
# Configure, build and install (Qt GUI disabled for headless/container use)
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]
Core concerns
- Potential missing build-time dependencies (e.g., libtorrent, specific Qt components) not guaranteed by base image; ensure all build-time dependencies are satisfied.
- COPY . /qbittorrent copies the entire repository; consider adding a .dockerignore to exclude large or unnecessary files to speed up builds and reduce image size.
- Running as root inside the container could have security implications; consider introducing a non-root user for runtime (qbittorrent-nox may support daemonization under a non-root user).
Build error
- Error summary (Docker build)
- CMake Error at cmake/Modules/CheckPackages.cmake:11 (message):
Package LibtorrentRasterbar >= 1.2.19 not found with CMake or pkg-config.
- Call Stack includes: cmake/Modules/CheckPackages.cmake:39 (find_libtorrent), CMakeLists.txt:55 (include)
- -- Configuring incomplete, errors occurred!
- Exit code: 1
- Failing command/step
- The final step [5/5] RUN cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF && cmake --build build && cmake --install build
- Terminal snippet
- The process "/bin/sh -c cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF && cmake --build build && cmake --install build" did not complete successfully: exit code: 1
Missing packages or files mentioned
- No package 'libtorrent-rasterbar' found
- CMake suggestions:
- Set LibtorrentRasterbar_DIR to a directory containing LibtorrentRasterbarConfig.cmake or add its install prefix to CMAKE_PREFIX_PATH
- Alternatively, ensure libtorrent-rasterbar.pc exists in PKG_CONFIG_PATH
Version mismatch info
- Required: LibtorrentRasterbar >= 1.2.19
- The build environment did not provide a libtorrent-rasterbar with a compatible version accessible to CMake/pkg-config
Notes
- The log shows libtorrent-rasterbar was explicitly checked for and not found, triggering the CMake error.
- To fix, install a libtorrent-rasterbar >= 1.2.19 (and its pkg-config file), or point CMake/Pkg-Config to the correct installation via LibtorrentRasterbar_DIR or PKG_CONFIG_PATH.FROM ubuntu:22.04
# Build qBittorrent from source with GUI disabled to ensure headless/container friendly image
# This image aims to produce qbittorrent-nox but keeps the build steps aligned with the project
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev \
libboost-all-dev \
libtorrent-rasterbar-dev \
qt6-base-dev qt6-declarative-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
# Copy source and build
WORKDIR /qbittorrent
COPY . /qbittorrent
# Configure, build and install (Qt GUI disabled for headless/container use)
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]
- Exact error message and exit code
- Error: "Package LibtorrentRasterbar >= 2.0.10 not found with CMake or pkg-config."
- Additional hint: "Requested 'libtorrent-rasterbar >= 2.0.10' but version of libtorrent is 2.0.5"
- Configuring incomplete: "CMake Error at cmake/Modules/CheckPackages.cmake:11 (message):"
- Exit code: 1
- Failing command/step
- The Docker build fails at the final step:
RUN cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF && cmake --build build && cmake --install build
- Missing packages or files mentioned
- libtorrent-rasterbar >= 2.0.10 not found
- The build found libtorrent-rasterbar 2.0.5 instead of the required 2.0.10
- Version mismatch info
- "Requested 'libtorrent-rasterbar >= 2.0.10' but version of libtorrent is 2.0.5"FROM ubuntu:22.04
# Build qBittorrent from source with GUI disabled to ensure headless/container friendly image
# This image uses a local libtorrent build to satisfy qbittorrent's dependencies when GUI is OFF
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
git pkg-config \
libssl-dev zlib1g-dev \
libboost-all-dev \
qt6-base-dev qt6-declarative-dev qt6-svg-dev \
python3 \
&& rm -rf /var/lib/apt/lists/*
# Build libtorrent (required by qBittorrent, especially for libtorrent-rasterbar >= 2.0.x)
WORKDIR /tmp
RUN git clone --branch v2.0.11 --depth 1 https://github.com/arvidn/libtorrent.git /tmp/libtorrent && \
cd /tmp/libtorrent && \
cmake -B build -G Ninja \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_CXX_STANDARD=20 \
-Ddeprecated-functions=OFF && \
cmake --build build && cmake --install build
# Copy source and build
WORKDIR /qbittorrent
COPY . /qbittorrent
# Build qBittorrent from source (no GUI for container usage)
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]
- Exact error message and exit code - E: Unable to locate package qt6-svg-dev - Exit code: 100 - Failing command/step - RUN apt-get update && apt-get install -y --no-install-recommends build-essential cmake ninja-build git pkg-config libssl-dev zlib1g-dev libboost-all-dev qt6-base-dev qt6-declarative-dev qt6-svg-dev python3 && rm -rf /var/lib/apt/lists/* - Dockerfile line: 8 (Step [2/7]) - Missing packages or files mentioned - qt6-svg-dev (not found in apt sources) - Version mismatch info - The error occurs while using Ubuntu jammy (22.04) repositories; qt6-svg-dev is not available in jammy’s packages, indicating a distro/package version mismatch.
FROM ubuntu:22.04
# Build qBittorrent from source with GUI disabled to ensure headless/container friendly image
# This image aims to produce qbittorrent-nox but keeps the build steps aligned with the project
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev \
libboost-all-dev \
libtorrent-rasterbar-dev \
qt6-base-dev qt6-declarative-dev \
pkg-config \
python3 \
git \
&& rm -rf /var/lib/apt/lists/*
# Copy source and build
WORKDIR /qbittorrent
COPY . /qbittorrent
# Configure, build and install (Qt GUI disabled for container use)
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]
Summary (under 1500 chars): - VerifyBuild status: build_failed - Core causes - Dependency mismatch: libtorrent-rasterbar >= 2.0.10 is required but installed version is 2.0.5. - CMake configure fails: “Package LibtorrentRasterbar >= 2.0.10 not found with CMake or pkg-config.” See CheckPackages.cmake and CMakeLists.txt errors; configuring incomplete. See CMakeOutput.log at /qbittorrent/build/CMakeFiles/CMakeOutput.log. - Failing step - [5/5] RUN cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF && cmake --build build && cmake --install build - Missing/affected packages - libtorrent-rasterbar >= 2.0.10 not found; installed 2.0.5. - Version mismatch details - The build reports: "Requested 'libtorrent-rasterbar >= 2.0.10' but version of libtorrent is 2.0.5" indicating dependency/version conflict preventing configure. - Context and environment notes - Building from source can fail if qbittorrent sources or submodules/dependencies are missing in the build context. - COPY . /qbittorrent copies the entire build context; without a .dockerignore this bloats image and increases build time. - Qt6 GUI development packages are installed even with GUI disabled, adding unnecessary dependencies and size. - Suggested fixes from logs - Provide a libtorrent-rasterbar >= 2.0.10 (upgrade/install) or adjust constraints. - Ensure CMake can locate it: set LibtorrentRasterbar_DIR to a dir with LibtorrentRasterbarConfig.cmake or add to CMAKE_PREFIX_PATH; or ensure a valid libtorrent-rasterbar.pc in PKG_CONFIG_PATH.
FROM ubuntu:22.04
# Build qBittorrent (no GUI) from source inside a container
# This image focuses on qbittorrent-nox for headless environments
ENV DEBIAN_FRONTEND=noninteractive
# System dependencies for building libtorrent and qbittorrent
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
git pkg-config \
libssl-dev zlib1g-dev \
libboost-all-dev \
python3 \
&& rm -rf /var/lib/apt/lists/*
# Build libtorrent (rasterbar) from source to satisfy required version
WORKDIR /tmp
RUN git clone --branch v2.0.11 --depth 1 https://github.com/arvidn/libtorrent.git /tmp/libtorrent && \
cd /tmp/libtorrent && \
cmake -B build -G Ninja \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_CXX_STANDARD=20 \
-Ddeprecated-functions=OFF && \
cmake --build build && cmake --install build
# Copy source and build qBittorrent from source (GUI disabled)
WORKDIR /qbittorrent
COPY . /qbittorrent
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
-DLibtorrentRasterbar_DIR=/usr \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]
Summary of Docker build error - Exact error message and exit code - fatal: unable to access 'https://github.com/arvidn/libtorrent.git/': server certificate verification failed. CAfile: none CRLfile: none - Exit code: 128 - Failing command/step - [4/7] RUN git clone --branch v2.0.11 --depth 1 https://github.com/arvidn/libtorrent.git /tmp/libtorrent && cd /tmp/libtorrent && cmake -B build -G Ninja -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_CXX_STANDARD=20 -Ddeprecated-functions=OFF && cmake --build build && cmake --install build - Missing packages or files mentioned - None explicitly listed. The failure is due to SSL certificate verification during git clone. - Note: Certificate store appears to be missing in the container (CAfile: none, CRLfile: none). - Version mismatch info - No explicit version mismatch reported. The clone attempted branch v2.0.11 of libtorrent.
FROM ubuntu:22.04
# Build qBittorrent (no GUI) from source inside a container
# This image focuses on qbittorrent-nox for headless environments
ENV DEBIAN_FRONTEND=noninteractive
# System dependencies for building libtorrent and qbittorrent
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev \
libboost-all-dev \
libtorrent-rasterbar-dev \
qt6-base-dev qt6-declarative-dev \
pkg-config \
&& rm -rf /var/lib/apt/lists/*
# Copy source and build qBittorrent from source (GUI disabled)
WORKDIR /qbittorrent
COPY . /qbittorrent
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]
- VerifyBuild status: build_failed
- Build context concerns
- COPY . /qbittorrent requires the build context to include the qbittorrent source
- Building from source inside the image can create large images and long build times
- Ensure runtime Qt6 dependencies are present; -DGUI=OFF relies on Qt6 libs at runtime
- Failing step (exact command)
- [5/5] RUN cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DTESTING=ON -DVERBOSE_CONFIGURE=ON -DGUI=OFF && cmake --build build && cmake --install build
- Exit code
- Exit code: 1
- Key error output
- Checking for module 'libtorrent-rasterbar>=2.0.10'
- Requested 'libtorrent-rasterbar >= 2.0.10' but version of libtorrent is 2.0.5
- CMake Error at cmake/Modules/CheckPackages.cmake:11 (message):
Package LibtorrentRasterbar >= 2.0.10 not found with CMake or pkg-config.
- Set LibtorrentRasterbar_DIR to a directory containing a LibtorrentRasterbarConfig.cmake file or add the installation prefix of LibtorrentRasterbar to CMAKE_PREFIX_PATH.
- Alternatively, ensure a valid libtorrent-rasterbar.pc file is in the system's pkg-config search paths (PKG_CONFIG_PATH may be needed).
- Configuring incomplete, errors occurred!
- See also "/qbittorrent/build/CMakeFiles/CMakeOutput.log".
- Missing packages or files mentioned
- libtorrent-rasterbar >= 2.0.10 not found (version present: 2.0.5)
- LibtorrentRasterbarConfig.cmake (directory to set in LibtorrentRasterbar_DIR)
- libtorrent-rasterbar.pc (pkg-config file; PKG_CONFIG_PATH may be needed)
- Version/mismatch information
- Required: libtorrent-rasterbar >= 2.0.10
- Found: libtorrent 2.0.5 (no suitable CMake/pkg-config entry)
- Context
- Failure occurs during cmake configure (not during download or a prior cached step); build cannot proceed due to libtorrent-rasterbar version mismatch / missing pkg-config data
- References
- See /qbittorrent/build/CMakeFiles/CMakeOutput.log
- Summary: The build fails because libtorrent-rasterbar >= 2.0.10 is required but only 2.0.5 is present, with missing CMake/pkg-config data (LibtorrentRasterbarConfig.cmake and libtorrent-rasterbar.pc). Restore or install a compatible libtorrent-rasterbar version and ensure PKG_CONFIG_PATH/CMAKE_PREFIX_PATH are configured.FROM ubuntu:22.04
# Build qBittorrent (no GUI) from source inside a container
# This image focuses on qbittorrent-nox for headless environments
ENV DEBIAN_FRONTEND=noninteractive
# System dependencies for building libtorrent and qbittorrent
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential cmake ninja-build \
libssl-dev zlib1g-dev \
libboost-all-dev \
qt6-base-dev qt6-declarative-dev \
pkg-config \
python3 \
wget ca-certificates \
&& rm -rf /var/lib/apt/lists/*
# Build libtorrent (rasterbar) from source to satisfy required version
WORKDIR /tmp
RUN set -eux; \
wget -O libtorrent-2.0.11.tar.gz https://github.com/arvidn/libtorrent/releases/download/v2.0.11/libtorrent-rasterbar-2.0.11.tar.gz || true; \
if [ ! -f libtorrent-2.0.11.tar.gz ]; then \
wget -O libtorrent-2.0.11.tar.gz https://github.com/arvidn/libtorrent/releases/download/v2.0.11/libtorrent-rasterbar-2.0.11.tar.gz; \
fi; \
tar -xzf libtorrent-2.0.11.tar.gz; \
cd libtorrent-rasterbar-2.0.11; \
cmake -B build -G Ninja -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_CXX_STANDARD=20 -Ddeprecated-functions=OFF; \
cmake --build build; cmake --install build
# Copy source and build qBittorrent from source (GUI disabled)
WORKDIR /qbittorrent
COPY . /qbittorrent
RUN cmake -B build \
-G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-DGUI=OFF \
-DCMAKE_PREFIX_PATH=/usr \
-DLibtorrentRasterbar_DIR=/usr/lib/cmake/libtorrent \
&& cmake --build build \
&& cmake --install build
# Default command runs the headless server
CMD ["qbittorrent-nox"]