Specify components in `rust-toolchain` and update the toolchain to `nightly-2020-08-20`.
diff --git a/Makefile b/Makefile
index 81829e2..779a021 100644
--- a/Makefile
+++ b/Makefile
@@ -38,12 +38,6 @@
 
 .PHONY: setup
 setup: setup-qemu
-	rustup target add thumbv7em-none-eabi
-	rustup target add riscv32imac-unknown-none-elf
-	rustup target add riscv32imc-unknown-none-elf
-	rustup component add clippy
-	rustup component add rustfmt
-	rustup component add miri
 	cargo install elf2tab --version 0.6.0
 	cargo install stack-sizes
 	cargo miri setup
diff --git a/core/Cargo.toml b/core/Cargo.toml
index f19168c..5632d23 100644
--- a/core/Cargo.toml
+++ b/core/Cargo.toml
@@ -11,6 +11,6 @@
 custom_alloc_error_handler = []
 
 [dependencies]
-linked_list_allocator = { optional = true, version = "=0.8.1", default-features = false }
+linked_list_allocator = { optional = true, version = "0.8.6", default-features = false }
 libtock_codegen = { path = "../codegen" }
 libtock_platform = { path = "platform" }
diff --git a/core/src/lang_items.rs b/core/src/lang_items.rs
index b5c2cd4..82d2f54 100644
--- a/core/src/lang_items.rs
+++ b/core/src/lang_items.rs
@@ -21,6 +21,7 @@
 use crate::syscalls;
 
 #[lang = "start"]
+#[allow(improper_ctypes_definitions)]
 extern "C" fn start<T>(main: fn() -> T, _argc: isize, _argv: *const *const u8) -> bool
 where
     T: Termination,
diff --git a/layout_generic.ld b/layout_generic.ld
index f2deebb..0bbef87 100644
--- a/layout_generic.ld
+++ b/layout_generic.ld
@@ -160,6 +160,11 @@
       *(.ARM.exidx* .gnu.linkonce.armexidx.*)
     } > FLASH
     PROVIDE_HIDDEN (__exidx_end = .);
+
+    /DISCARD/ :
+    {
+      *(.eh_frame)
+    }
 }
 
 ASSERT((_stack_top_aligned - _stack_top_unaligned) == 0, "
diff --git a/rust-toolchain b/rust-toolchain
index 4aec5c6..0a379e7 100644
--- a/rust-toolchain
+++ b/rust-toolchain
@@ -1 +1,8 @@
-nightly-2020-06-10
+[toolchain]
+# See https://rust-lang.github.io/rustup-components-history/ for a list of
+# recently nightlies and what components are available for them.
+channel = "nightly-2020-08-20"
+components = ["clippy", "miri", "rustfmt"]
+targets = ["thumbv7em-none-eabi",
+           "riscv32imac-unknown-none-elf",
+           "riscv32imc-unknown-none-elf"]