Closed
Description
I am experiencing a bug when trying to compile my application for Arduino Uno.
Probably, there's a regression somewhere.
Because, it used to work 1 month ago. CI: https://travis-ci.com/github/Rahix/avr-hal/builds/207260821
Original issue: Rahix/avr-hal#124
Output
Step 6/6 : RUN cargo +nightly build --example uno-blink
---> Running in fde0189b88d8
Updating git repository `https://github.com/Rahix/ufmt.git`
Updating crates.io index
Downloading crates ...
Downloaded nb v0.1.3
Downloaded paste v1.0.4
Downloaded rustc_version v0.2.3
Downloaded semver-parser v0.7.0
Downloaded quote v1.0.8
Downloaded proc-macro2 v1.0.24
Downloaded proc-macro-hack v0.5.19
Downloaded vcell v0.1.3
Downloaded void v1.0.2
Downloaded cfg-if v0.1.10
Downloaded unicode-xid v0.2.1
Downloaded syn v1.0.58
Downloaded avr-device-macros v0.2.3
Downloaded avr-device v0.2.3
Downloaded semver v0.9.0
Downloaded panic-halt v0.2.0
Downloaded nb v1.0.0
Downloaded embedded-hal v0.2.4
Downloaded bare-metal v0.2.5
Downloading crates ...
Downloaded cc v1.0.60
Downloaded compiler_builtins v0.1.39
Downloaded getopts v0.2.21
Downloaded hashbrown v0.9.0
Downloaded addr2line v0.14.0
Downloaded gimli v0.23.0
Downloaded miniz_oxide v0.4.0
Downloaded adler v0.2.3
Downloaded object v0.22.0
Downloaded unicode-width v0.1.8
Downloaded rustc-demangle v0.1.18
Downloaded libc v0.2.79
Compiling compiler_builtins v0.1.39
Compiling core v0.0.0 (/usr/local/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core)
Compiling proc-macro2 v1.0.24
Compiling unicode-xid v0.2.1
Compiling syn v1.0.58
Compiling semver-parser v0.7.0
Compiling proc-macro-hack v0.5.19
Compiling paste v1.0.4
Compiling semver v0.9.0
Compiling rustc_version v0.2.3
Compiling quote v1.0.8
Compiling bare-metal v0.2.5
Compiling rustc-std-workspace-core v1.99.0 (/usr/local/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/rustc-std-workspace-core)
LLVM ERROR: Not supported instr: <MCInst 258 <MCOperand Reg:1> <MCOperand Imm:15> <MCOperand Reg:40>>
error: could not compile `compiler_builtins`
To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed
The command '/bin/sh -c cargo +nightly build --example uno-blink' returned a non-zero code: 101
With --release
and --verbose
:
Compiling embedded-hal v0.2.4
Running `rustc --crate-name embedded_hal /Users/sobolev/.cargo/registry/src/github.com-1ecc6299db9ec823/embedded-hal-0.2.4/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=s -C panic=abort -C linker-plugin-lto -C codegen-units=1 -C debuginfo=2 --cfg 'feature="unproven"' -C metadata=503a59343e486e01 -C extra-filename=-503a59343e486e01 --out-dir /Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps --target /Users/sobolev/Desktop/avr-hal/avr-specs/avr-atmega328p.json -L dependency=/Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps -L dependency=/Users/sobolev/Desktop/avr-hal/target/release/deps --extern 'noprelude:compiler_builtins=/Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps/libcompiler_builtins-afa03ed941a63b4f.rmeta' --extern 'noprelude:core=/Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps/libcore-30308749cc1695e3.rmeta' --extern nb=/Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps/libnb-e03ff2173c96de6e.rmeta --extern void=/Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps/libvoid-4cf9d65885018701.rmeta -Z unstable-options --cap-lints allow`
LLVM ERROR: Not supported instr: <MCInst 258 <MCOperand Reg:1> <MCOperand Imm:15> <MCOperand Reg:40>>
error: could not compile `compiler_builtins`
Caused by:
process didn't exit successfully: `rustc --crate-name compiler_builtins /Users/sobolev/.cargo/registry/src/github.com-1ecc6299db9ec823/compiler_builtins-0.1.39/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=s -C panic=abort -C linker-plugin-lto -C codegen-units=1 -C debuginfo=2 --cfg 'feature="compiler-builtins"' --cfg 'feature="core"' --cfg 'feature="default"' --cfg 'feature="rustc-dep-of-std"' -C metadata=afa03ed941a63b4f -C extra-filename=-afa03ed941a63b4f --out-dir /Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps --target /Users/sobolev/Desktop/avr-hal/avr-specs/avr-atmega328p.json -Z force-unstable-if-unmarked -L dependency=/Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps -L dependency=/Users/sobolev/Desktop/avr-hal/target/release/deps --extern core=/Users/sobolev/Desktop/avr-hal/target/avr-atmega328p/release/deps/librustc_std_workspace_core-2709fdbb3f7a5de3.rmeta --cap-lints allow --cfg 'feature="unstable"'` (exit code: 101)
warning: build failed, waiting for other jobs to finish...
error: build failed
Reproduction
- Clone https://github.com/Rahix/avr-hal
- Add this
Dockefile
:
FROM rustlang/rust:nightly-slim
RUN apt-get update \
&& apt-get install --no-install-recommends -y \
avr-libc \
binutils-avr \
gcc-avr \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
&& apt-get clean -y && rm -rf /var/lib/apt/lists/*
COPY . /code
WORKDIR /code/boards/arduino-uno
RUN rustup component add rust-src
RUN cargo +nightly build --example uno-blink
- Run
docker build --tag=ard .
Versions
info: The currently active `rustc` version is `rustc 1.51.0-nightly (c8915eebe 2021-01-07)`
» avr-gcc --version
avr-gcc 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Metadata
Metadata
Assignees
Labels
No labels