-
Notifications
You must be signed in to change notification settings - Fork 13k
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
1.47 beta cross-compiling broken: tries to run the reverse cross-compile #76333
Comments
Can you gist the full log somewhere? It should have enough information to know what caused this. |
@Mark-Simulacrum thanks for taking a look, it's here, 4MB: https://gist.github.com/infinity0/f0100323593bfc86247c7d8f86a1a3e9 |
@infinity0 Unrelated, but https://blog.rust-lang.org/inside-rust/2020/08/30/changes-to-x-py-defaults.html is something you should probably be aware of. I think the problem is that you're not explicitly setting the targets, so we're including hosts and the build triple in them. Is this a regression from the previous release? We can probably adjust the behavior back if so. Edit: It should be fixable with |
Hit the same issue, it turns out that there is a change in rustbuild that To resolve this, use I am unsure whether this is a bug in the strict sense, maybe cross-compiling should imply |
Hm, so passing --stage 2 fixes this? That's surprising to me, I would expect us to build a similar or equivalent set regardless of stage. Could you gist a log with stage 2? |
@Mark-Simulacrum This is a regression, it was working fine for us on 1.46 and earlier versions. However I do note that the documentation for config.toml says:
When cross-compiling in Debian we do not assume that "this [the build] platform must currently be able to run all of the triples provided here", and this worked fine on 1.46 and earlier. I am not sure if the change in 1.47 was simply making this documentation actually effective - if so it would be nice to revert it and reverse what the documentation states. When cross-compiling in general, I think it's reasonable not to assume that one can actually run the resulting binaries, and I'm not sure what the intention behind this statement in the documentation is supposed to be for. If you are cross-compiling for a specific platform that you can run, e.g. x86-64 -> i686, you can run the tests explicitly afterwards for that target, there is no need to make this assumption for the build step. |
OK, It's possible that @Mark-Simulacrum it seems that the documentation for |
config.toml:
build log tail:
That line
Building stage1 std artifacts (armv5te-unknown-linux-gnueabi -> x86_64-unknown-linux-gnu)
does not look like it should be there.The text was updated successfully, but these errors were encountered: