# Better Firmware with LLVM/Clang | Interrupt

**URL:** https://community.memfault.com/t/better-firmware-with-llvm-clang-interrupt/195
**Category:** Blog
**Created:** [May 20, 2020, 5:59am UTC](https://community.memfault.com/t/better-firmware-with-llvm-clang-interrupt/195 "2020-05-20T05:59:25Z")
**Posts on this page:** 1
**Showing post:** 28

<div class="post-metadata">

### Author: ![lonelyjoey1905](https://avatars.discourse-cdn.com/v4/letter/l/b4bc9f/32.png) [@lonelyjoey1905](https://community.memfault.com/u/lonelyjoey1905)
#### Post date: [September 23, 2020, 10:56pm UTC](https://community.memfault.com/t/better-firmware-with-llvm-clang-interrupt/195/28 "2020-09-23T22:56:35Z")

</div>

Thank you so much for your help! You’re a lifesaver!  
After switching my `arm-none-eabi-gcc` to the one downloaded from theARM website, I can see the files `libm.a` and `libc.a`.

After that I faced an identical issue with @mcrajah (`-L` issue), but I was able to resolve it thanks to @mcrajah 's previous comments.

I’m just one foot away from succeeding cross-compilation with clang… 🙂  
Currently my `lld.ld` fails due to the symbol `COPY` in the linker file (`nrf52.ld`).  
I’m not sure what I need to do to fix this one…

```auto
$ COMPILER=clang make
error: /home/lonelyjoe/workspace/embedded/interrupt/example/freertos-example-llvm/nrf52.ld:76: symbol not found: COPY
clang: error: ld.lld command failed with exit code 1 (use -v to see invocation)
Makefile:154: recipe for target '/home/lonelyjoe/workspace/embedded/interrupt/example/freertos-example-llvm/build/nrf52.elf' failed
make: *** [/home/lonelyjoe/workspace/embedded/interrupt/example/freertos-example-llvm/build/nrf52.elf] Error 1

```

---

_[View the full topic](https://community.memfault.com/t/better-firmware-with-llvm-clang-interrupt/195)._
