1 |
On Tuesday 19 November 2013 08:27:44 billium wrote: |
2 |
> I've been using crossdev with an STM32F100 for a while and it works |
3 |
> great ... thanks to all involved. |
4 |
> I'm now want to use newlib. The tuple I use is arm-none-eabi. |
5 |
|
6 |
correct |
7 |
|
8 |
> Is there |
9 |
> anything I should put in the Makefile of the project or changes to |
10 |
> crossdev to prevent multiple definition of syscalls e.g. _write. |
11 |
|
12 |
most likely you're not defining one of the syscall symbols which is causing the |
13 |
stub one to get linked in |
14 |
|
15 |
if you read the libgloss arm syscalls.c, you'll see that they're all written |
16 |
to assume you've got a handler installed to listen to "swi" calls. then in |
17 |
your handler, you'd decode what it is the library is trying to do. |
18 |
|
19 |
if, instead, you want to hijack _write directly, you'll need to do it for |
20 |
every symbol defined in /usr/arm-none-eabi/lib/libc.a(lib_a-syscalls.o). you |
21 |
can use `readelf -s` to see them. |
22 |
|
23 |
sadly, libgloss tends to be undocumented and vary based on architecture. |
24 |
|
25 |
> Also is there any way to use newlib-nano. |
26 |
|
27 |
no idea what that is |
28 |
-mike |