Skip to content

"no matching manifest" on cross v0.2.5 #1214

Open
@ConradIrwin

Description

@ConradIrwin

Checklist

Describe your issue

I've been cross-compiling https://github.com/automerge/automerge-go for a while. Today I upgraded cross, and it broke cross-compilation:

$ cargo init --bin hello
$ cd hello
$ cross run --target aarch64-unknown-linux-gnu
Unable to find image 'ghcr.io/cross-rs/aarch64-unknown-linux-gnu:0.2.5' locally
0.2.5: Pulling from cross-rs/aarch64-unknown-linux-gnu
docker: no matching manifest for linux/arm64/v8 in the manifest list entries.
See 'docker run --help'.

The error message is the same as the one I get when I run docker with no --platform argument, when I do not have the image cached locally (once the image has run once, I no longer need to pass --platform to docker to make it work).

In case it helps tracking this down, I'm using Docker version 20.10.23, build 7155243 (as provided by Docker Desktop 4.17.0 (99724).

$ docker run -it  ghcr.io/cross-rs/x86_64-unknown-linux-gnu:0.2.5 /bin/bash
Unable to find image 'ghcr.io/cross-rs/x86_64-unknown-linux-gnu:0.2.5' locally
0.2.5: Pulling from cross-rs/x86_64-unknown-linux-gnu
docker: no matching manifest for linux/arm64/v8 in the manifest list entries.
See 'docker run --help'.
$ docker run -it --platform linux/amd64 ghcr.io/cross-rs/x86_64-unknown-linux-gnu:0.2.5 /bin/bash
Unable to find image 'ghcr.io/cross-rs/x86_64-unknown-linux-gnu:0.2.5' locally
0.2.5: Pulling from cross-rs/x86_64-unknown-linux-gnu
58690f9b18fc: Pull complete
b51569e7c507: Pull complete
da8ef40b9eca: Pull complete
fb15d46c38dc: Pull complete
7cd0932c59ac: Pull complete
b8099f45b9a5: Pull complete
640227c3e7fb: Pull complete
feac1a957a2e: Pull complete
2bb7cc963f55: Pull complete
69f3cca19ad2: Pull complete
9eae8e6ab0e2: Pull complete
f6948013d489: Pull complete
e63c3aabe8fe: Pull complete
f3f8758fddaa: Pull complete
e8df8713a13e: Pull complete
840b2ff81099: Pull complete
e52d8b455ef1: Pull complete
Digest: sha256:9e5b39c09874bc1816c675ed11afca2c2ed6cee0c4ed2b3c1d5763c346c9ae3f
Status: Downloaded newer image for ghcr.io/cross-rs/x86_64-unknown-linux-gnu:0.2.5
root@ad6f0bc127c6:/#
docker run -it  ghcr.io/cross-rs/x86_64-unknown-linux-gnu:0.2.5 /bin/bash
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
root@9e3a9c7477c6:/# exit

What target(s) are you cross-compiling for?

aarch64-unknown-linux-gnu, x86_64-unknown-linux-gnu

Which operating system is the host (e.g computer cross is on) running?

  • macOS
  • Windows
  • Linux / BSD
  • other OS (specify in description)

What architecture is the host?

  • x86_64 / AMD64
  • arm32
  • arm64 (including Mac M1)

What container engine is cross using?

  • docker
  • podman
  • other container engine (specify in description)

cross version

0.2.5

Example

$ cargo init --bin hello
$ cd hello
$ cross run --target aarch64-unknown-linux-gnu
Unable to find image 'ghcr.io/cross-rs/aarch64-unknown-linux-gnu:0.2.5' locally
0.2.5: Pulling from cross-rs/aarch64-unknown-linux-gnu
docker: no matching manifest for linux/arm64/v8 in the manifest list entries.
See 'docker run --help'.

Additional information / notes

This is not a problem on the previous version with cargo install cross@0.2.4. Everything works fine!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions