What does `unknown` stand for in `rustup target list`?

For example:

$ rustup target list | grep linux | grep x86_64
x86_64-linux-android
x86_64-unknown-linux-gnu
x86_64-unknown-linux-gnux32
x86_64-unknown-linux-musl

I wonder why it is x86_64-linux-android rather than x86_64-unknown-linux-android and it is x86_64-unknown-linux-gnu rather than x86_64-linux-gnu.

Does unknown really make sense?

I've tried googling and searching by stackoverflow for any official document which explains in detail but all in vain. :frowning:

That component of the target is the "vendor" section. The clang documentation talks a bit about what it's for, and when "unknown" would be used: Cross-compilation using Clang — Clang 16.0.0git documentation

2 Likes

That link is exactly what I am looking for, thanks a million! :smiley: