rust-card10 issueshttps://git.flow3r.garden/astro/rust-card10/-/issues2019-09-10T15:02:19Zhttps://git.flow3r.garden/astro/rust-card10/-/issues/14Reconsider `bindgen` as direct build dependency.2019-09-10T15:02:19ZrndReconsider `bindgen` as direct build dependency.**Current State**
Currently `bindgen` is a direct build dependency of `card10-sys` as the build automatically generates `bindings.rs`. This is easy to maintain but it might lead to some strange compilation errors.
**Issue**
The underl...**Current State**
Currently `bindgen` is a direct build dependency of `card10-sys` as the build automatically generates `bindings.rs`. This is easy to maintain but it might lead to some strange compilation errors.
**Issue**
The underlying problem is a quite old issue in cargo (https://github.com/rust-lang/cargo/issues/4866) which comes in many shapes but in the end results in a state where cargo combines all the expected features for any dependency or subdependency regardless of the category the crate was originally defined in.
In case of `bindgen` the most obvious problem is that it indirectly enables the `std` feature for `failure` and therefore tries to inject `backtrace` and `backtrace-sys` into the dependency tree. Its also includes some other crates and their default features and all of them might or might not be `no_std` compatible.
Any additional direct dependency, even if it has a `no_std` compatible feature set, might come with an additional feature (most likely `std`) which contains `failure` or another crate which is part of the dependency tree of `bindgen`.
I assume we did not encounter any issues until now because the `lto` saved us again and removed all parts of the build dependency sub dependency tree from the the final compilation as we do not depend on them. This won't work anymore if they one of them is actually required.
**Potential Solution**
As `bindings.rs` is direct related to the current version of the firmware in use it should be quite easy to remove it from the build script and just call it manually if the firmware is updated.
Maybe also add a note about it into `README.md` and provide a `update-bindings.sh` script.https://git.flow3r.garden/astro/rust-card10/-/issues/13`LTO` currently hides relocation errors in libcore2019-09-10T14:34:26Zrnd`LTO` currently hides relocation errors in libcore**What Happened**
I just setup a new l0dable-crate and followed the instructions inside the `README` file which does not work as they do not mention that its necessary to enable the `lto` for the release profile. To verify this I double...**What Happened**
I just setup a new l0dable-crate and followed the instructions inside the `README` file which does not work as they do not mention that its necessary to enable the `lto` for the release profile. To verify this I double checked this with the example inside this repository and as soon as the `lto` is disabled the compilation process fails with a bunch of error messages like the one below.
<details>
<summary> Errors like these: </summary>
```shell
= note: "arm-none-eabi-gcc" "-L" "/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/example-b0d06d53a9f29c5f.example.7u538awy-cgu.0.rcgu.o" "-o" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/example-b0d06d53a9f29c5f" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/example-b0d06d53a9f29c5f.nft3kh2apwplqaf.rcgu.o" "-Wl,--gc-sections" "-nodefaultlibs" "-L" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps" "-L" "/home/rnd/dev/card10/rust-card10/target/release/deps" "-L" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/build/card10-sys-d11570dd222738cc/out" "-L" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/build/card10-sys-d11570dd222738cc/out" "-L" "/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib" "-Wl,--start-group" "-Wl,-Bstatic" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libcard10_alloc-0254c29aaf5bda3c.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/liballoc_cortex_m-0da8bc6a774b2859.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/liblinked_list_allocator-02d8a1d1def89043.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libcortex_m-de4b518b8429cfa0.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libvolatile_register-2bcbe72d87a3d2d7.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libcard10_l0dable-431ac302d8891658.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libembedded_graphics-3018aaf3934f4f68.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libcard10_sys-675eb94201fb2a83.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libr0-c42ab1499cb9a0ec.rlib" "/home/rnd/dev/card10/rust-card10/target/thumbv7em-none-eabi/release/deps/libpanic_abort-af6456563b344557.rlib" "/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib" "/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/librustc_std_workspace_core-892a1fc9f1778e64.rlib" "/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib" "-Wl,--end-group" "/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcompiler_builtins-3566d98813543234.rlib" "-Tl0dable.ld" "-n" "-pie" "-fPIC" "-Wl,-Bdynamic"
= note: /usr/lib/gcc/arm-none-eabi/7.3.1/../../../arm-none-eabi/bin/ld: /home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o): relocation R_ARM_THM_MOVW_ABS_NC against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/arm-none-eabi/7.3.1/../../../arm-none-eabi/bin/ld: /home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o): relocation R_ARM_THM_MOVW_ABS_NC against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.1+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.1+0xc): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.1+0x10): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.1+0x14): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.3+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.5+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.5+0xc): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.10+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/liballoc-e72836af3c963598.rlib(alloc-e72836af3c963598.alloc.6vtnwfkv-cgu.0.rcgu.o):(.rodata..Lanon.0b0626764e5e7f05a26647479b1fe19f.10+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.2+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.2+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.4+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.4+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.6+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.6+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.8+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.8+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.10+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.10+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.12+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.12+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.13+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.14+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.15+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.15+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.16+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.16+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.17+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.17+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.18+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.18+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.19+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.19+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.20+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.23+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.24+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.26+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.26+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.27+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.27+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.28+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.28+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.29+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.29+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.30+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.30+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.31+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.31+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.33+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.33+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.37+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.37+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.37+0x10): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.38+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.38+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.39+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.40+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.42+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.42+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.44+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.44+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.45+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.45+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.46+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.46+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.47+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.48+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.49+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.50+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.51+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.52+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.54+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.54+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.56+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.56+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.88+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.88+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.112+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.112+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.113+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.125+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.139+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.139+0xc): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.148+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.148+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.166+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.166+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.170+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.170+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.173+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.180+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.180+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.181+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.184+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.184+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.185+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.232+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.232+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.232+0x10): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.233+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.237+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.237+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.237+0x10): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.237+0x18): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.238+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.242+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.242+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.242+0x10): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.242+0x18): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.242+0x20): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.243+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.249+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.249+0xc): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.249+0x10): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.249+0x14): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.274+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.274+0xc): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.274+0x10): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.274+0x14): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.275+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.276+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.298+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.299+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.300+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.301+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.302+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.331+0x100): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.331+0x108): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.331+0x110): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.410+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.413+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.413+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.414+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.416+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.416+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.417+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.418+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.419+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.420+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.421+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.422+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.423+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.424+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.426+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.426+0x8): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.444+0x0): dangerous relocation: unsupported relocation
/home/rnd/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7em-none-eabi/lib/libcore-dfc29ee16632c3f1.rlib(core-dfc29ee16632c3f1.core.degj9ma7-cgu.0.rcgu.o):(.rodata..Lanon.b8789e1f22b96bef6f1f45c47065e9d4.444+0xc): dangerous relocation: unsupported relocation
collect2: error: ld returned 1 exit status
```
</details>
<br/>
**Issue**
One of these many lines of output mentions that the reason might be that `libcore` is not compiled with `-fPIC` as linker argument which could be true as `libcore`, `liballoc` and `libstd` are normally precompiled for all targets managed by rustc. So even if we use `-fPIC` inside our custom linker flags this won't apply to `libcore`.
Sot the only reason that we were able to compile until know was that the related instructions are not present in all parts of `libcore` and we don not accidentilly encountered one of the bad ones so that the `lto` was still able to remove them all. This might change in the future or for any dependent project which tries to use other parts of `libcore`.
**Proposed Solution**
The solution might be simpler than it seems as the project `cargo-xbuild` (previsouly known as `xargo`) exists to fix exactly this kind of issue. It can be used to create project and target specific versions of `libcore`, `liballoc` and `libstd` on the fly as it will just recompile them with the given compiler and linker flags during the build process.
(This should also reduce the executable size a bit further as we are still able to use `lto` which should work even better than before in this new scenario.)
**Required Changes**
Almost none. The compilaton will require `cargo-xbuild`, the nightly toolchain, the `thumbv7em-eabi-none` target and the related `rust-src` component. None of these would affect the the source code itself. The updated setup instructions would look like:
```shell
rustup toolchain install nightly
rustup target add thumbv7em-none-eabi --toolchain nightly
rustup component add rust-src --target thumbv7em-none-eabi --toolchain nightly
cargo install cargo-xbuild
```
To build the project it would now be necessary to call `xbuild` instead of `build`:
```shell
carg +nightly xbuild --target thumbv7em-none-eabi --release
```
If the target is still defined inside `.cargo/config` its not even necessary to mention it inside the call.
We are also going to encounter https://github.com/japaric/xargo/issues/45 which will require that we split the definition of `linker-args` in `.cargo/config` into multiple calls of `link-arg`.
```toml
[target.thumbv7em-none-eabi]
rustflags = [
"-C", "linker=arm-none-eabi-gcc",
"-C", "link-arg=-Tl0dable.ld",
"-C", "link-arg=-n",
"-C", "link-arg=-pie",
"-C", "link-arg=-fPIC",
"-C", "relocation-model=pic",
]
```https://git.flow3r.garden/astro/rust-card10/-/issues/9Pregenerate C bindings2019-09-06T09:51:12ZlilpepPregenerate C bindingsI tried to compile this both on Linux and on macOS and both times I hit by issues by rust-bindgen.
In order to somehow ease the experience, wouldn't it be better to use pre-generate the bindings offline? I know that rust-bindgen recomme...I tried to compile this both on Linux and on macOS and both times I hit by issues by rust-bindgen.
In order to somehow ease the experience, wouldn't it be better to use pre-generate the bindings offline? I know that rust-bindgen recommends to invoke it as part of build.rs script. However, I believe they recommend it for the default case, when the target is not known and of course definitions can change.
In the case rust-card10 (I assume) the target is pretty much fixed and in theory it should be fine to just pregenerate the bindings.https://git.flow3r.garden/astro/rust-card10/-/issues/3Implement time set functions2019-09-05T09:25:06ZKloenkImplement time set functionsimplement the time set functions for the rtc to write the current time to the rtc as described in the Trait time:
```rust
pub trait Time {
fn time() -> Self;
fn set_time(&self);
}
```
### Epicardium
The associated function f...implement the time set functions for the rtc to write the current time to the rtc as described in the Trait time:
```rust
pub trait Time {
fn time() -> Self;
fn set_time(&self);
}
```
### Epicardium
The associated function from epicardium is [epic_rtc_set_milliseconds](https://firmware.card10.badge.events.ccc.de/epicardium/api.html#c.epic_rtc_set_milliseconds)l0dable 0.1.3https://git.flow3r.garden/astro/rust-card10/-/issues/6Card10 hangs when leaving a Rust app2019-09-05T01:44:10ZR. NestlerCard10 hangs when leaving a Rust appWhenever I exit a Rust app the card10 hangs and needs to be reset.Whenever I exit a Rust app the card10 hangs and needs to be reset.https://git.flow3r.garden/astro/rust-card10/-/issues/2create metadata.json for apps2019-08-23T21:52:24ZKloenkcreate metadata.json for appscreate a metadata.json file for example and rkanoid for names without '.elf' in the menucreate a metadata.json file for example and rkanoid for names without '.elf' in the menu