New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to use cross build --offline in docker-in-docker environment #1478
Comments
I'm not able to try this right now, but did you get the same result on the main branch?
|
root@fa8fa42ed45d:/workspace# CROSS_REMOTE_COPY_REGISTRY=1 CROSS_REMOTE=1 CROSS_REMOTE_COPY_CACHE=1 cross build --offline --target aarch64-unknown-linux-gnu --verbose
+ cargo metadata --format-version 1 --filter-platform aarch64-unknown-linux-gnu
+ rustc --print sysroot
+ /usr/bin/docker
+ /usr/bin/docker version -f '{{ .Server.Os }},,,{{ .Server.Arch }}'
+ /usr/bin/docker info -f {{.SecurityOptions}}
+ rustup toolchain list
+ rustup target list --toolchain stable-x86_64-unknown-linux-gnu
+ rustup component list --toolchain stable-x86_64-unknown-linux-gnu
+ /usr/bin/docker volume list --format {{.Name}} --filter 'name=^cross-stable-x86_64-unknown-linux-gnu'
+ /usr/bin/docker ps -a --filter 'name=cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056' --format {{.State}}
+ /usr/bin/docker run --userns host --name cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 --rm -v /cross -v /cross/cargo/bin -d -t ghcr.io/cross-rs/aarch64-unknown-linux-gnu:main
3746297ee54ebeefb2b3432a8513859382a06ec437dd133903cc6e14841ab5b0
+ /usr/bin/docker exec cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 sh -c 'mkdir -p '\''/cross/root'\'''
+ /usr/bin/docker cp -a /root/.xargo/. cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.xargo
Successfully copied 1.54kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.xargo
+ /usr/bin/docker exec cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 sh -c 'mkdir -p '\''/cross/root/.cargo'\'''
+ /usr/bin/docker cp -a /root/.cargo/. cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.cargo
Successfully copied 86.6MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.cargo
+ /usr/bin/docker exec cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 sh -c 'mkdir -p '\''/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib'\'''
+ /usr/bin/docker cp -a /root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
Successfully copied 49.1MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
+ /usr/bin/docker cp -a /root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/libexec cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
Successfully copied 1.25MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
+ /usr/bin/docker cp -a /root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/etc cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
Successfully copied 13.8kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
+ /usr/bin/docker cp -a /root/.local/share/cross-rs/tmp/.tmpsf37tk/lib cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
Successfully copied 299MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
+ /usr/bin/docker cp -a /root/.local/share/cross-rs/tmp/.tmpxjwsUN/lib cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
Successfully copied 855kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu
+ /usr/bin/docker cp -a /root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib
Successfully copied 149MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib
+ /usr/bin/docker cp -a /root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-unknown-linux-gnu cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib
Successfully copied 253MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib
+ /usr/bin/docker exec cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 sh -c 'mkdir -p '\''/cross/'\'''
+ /usr/bin/docker cp -a /workspace/. cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/workspace
Successfully copied 12.3kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/cross/workspace
+ /usr/bin/docker exec cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 sh -c 'set -e pipefail
set -x
chown -R 0:0 /cross
prefix="/cross"
symlink_recurse() {
for f in "${1}"/*; do
dst=${f#"$prefix"}
if [ -f "${dst}" ]; then
echo "invalid: got unexpected file at ${dst}" 1>&2
exit 1
elif [ -d "${dst}" ]; then
symlink_recurse "${f}"
else
ln -s "${f}" "${dst}"
fi
done
}
symlink_recurse "${prefix}"
'
+ chown -R 0:0 /cross
+ prefix=/cross
+ symlink_recurse /cross
+ dst=/cargo
+ [ -f /cargo ]
+ [ -d /cargo ]
+ ln -s /cross/cargo /cargo
+ dst=/root
+ [ -f /root ]
+ [ -d /root ]
+ symlink_recurse /cross/root
+ dst=/root/*
+ [ -f /root/* ]
+ [ -d /root/* ]
+ ln -s /cross/root/* /root/*
+ dst=/workspace
+ [ -f /workspace ]
+ [ -d /workspace ]
+ ln -s /cross/workspace /workspace
+ /usr/bin/docker exec --user 0:0 -e 'XARGO_HOME=/root/.xargo' -e 'CARGO_HOME=/root/.cargo' -e 'CROSS_RUST_SYSROOT=/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu' -e 'CARGO_TARGET_DIR=/target' -e 'CROSS_RUNNER=' -e CROSS_REMOTE_COPY_CACHE -e CROSS_REMOTE -e CROSS_REMOTE_COPY_REGISTRY -e TERM -e CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER -e http_proxy -e CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER -e https_proxy -e 'USER=root' -e 'CROSS_RUSTC_MAJOR_VERSION=1' -e 'CROSS_RUSTC_MINOR_VERSION=77' -e 'CROSS_RUSTC_PATCH_VERSION=2' -w /workspace cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 sh -c 'PATH="$PATH":"/root/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin" cargo build --offline --target aarch64-unknown-linux-gnu --verbose --target-dir target'
sh: 1: cargo: not found
+ /usr/bin/docker exec cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 bash -c '[[ -d '\''/cross//workspace/target'\'' ]]'
+ /usr/bin/docker cp -a cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056:/workspace/target /workspace
Successfully copied 5.12kB to /workspace
+ /usr/bin/docker stop cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056 --time 2
cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056
+ /usr/bin/docker rm cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-8af22-1714360407056
+ rustup component list --toolchain stable-x86_64-unknown-linux-gnu |
I think we should apply your suggested fix. However, are you sure you can't use |
Yes, my docker storage driver is not overlay2, and this is not a service I can control, so I can’t use |
Checklist
Describe your issue
How To Step On This Bug
cargo fetch
in advance to download the cache. After that, every time I compile, I will open--offline
mode and do not connect to the Internet.CROSS_REMOTE_COPY_REGISTRY=1
CROSS_REMOTE=1
CROSS_REMOTE_COPY_CACHE=1
--verbose
during compilation:log
package cache cannot be found during compilation:list
before compilation:Try To Analyze This Bug
/root/.cargo
directory was not copied into the volume. I tried executing some command after cross build executing/usr/bin/docker cp -a /root/.cargo cross-stable-x86_64-unknown-linux-gnu-*-unknown-linux-gnu-playground-*:/cross/cargo
, to see what the directory looks like, and use the following command:/root/.cargo
was copied to the/cross/cargo/.cargo
directory, causing all caches to become invalid. Since the directory was not empty, mount entered a bin directory, resulting inhome:: cargo_home_with_cwd_env (x, x)
cannot automatically switch to/cross/cargo/.cargo
CARGO_HOME=/cargo
, so I started trying to change the cross source code in my own workspaceTry To Solve This Bug
root@267382900f9e:/workspace# CROSS_REMOTE_COPY_REGISTRY=1 CROSS_REMOTE=1 CROSS_REMOTE_COPY_CACHE=1 ./cross build --offline --target aarch64-unknown-linux-gnu Successfully copied 19.7MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/cargo Successfully copied 2.05kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/cargo Successfully copied 1.54kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/cargo Successfully copied 50.6MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/cargo Successfully copied 2.05kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/cargo Successfully copied 2.05kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/cargo Successfully copied 1.54kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/cargo Successfully copied 49.1MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/rust Successfully copied 1.25MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/rust Successfully copied 13.8kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/rust Successfully copied 299MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/rust Successfully copied 855kB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/rust Successfully copied 149MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/rust/lib/rustlib Successfully copied 253MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/rust/lib/rustlib Successfully copied 38.3MB to cross-stable-x86_64-unknown-linux-gnu-53e1a-25ef9e3d8-aarch64-unknown-linux-gnu-playground-c4b44:/cross/project Compiling log v0.4.21 Compiling playground v0.1.0 (/cross/project) Finished dev [unoptimized + debuginfo] target(s) in 0.64s Successfully copied 4.67MB to /workspace root@267382900f9e:/workspace#
What target(s) are you cross-compiling for?
aarch64-unknown-linux-gnu
Which operating system is the host (e.g computer cross is on) running?
What architecture is the host?
What container engine is cross using?
cross version
cross 0.2.5
Example
Additional information / notes
No response
The text was updated successfully, but these errors were encountered: