Hallo, wie kann man mit exceptions in arm-alf-gcc arbeiten? Beim Linken kommen nämlich lauter Meldungen über undefinierte Referenzen wie z.b.
1 | arm-elf-gcc -mcpu=arm7tdmi -I. -gdwarf-2 -DROM_RUN -O2 -Wall -Wa,-adhlns=crt0.lst -MD -MP -MF .dep/main.elf.d crt0.o main.o uart.o LCD.o System.o Robot.o --output main.elf -nostartfiles -Wl,-Map=main.map,--cref -lc -lnewlib-lpc -lm -lc -lgcc -lstdc++ -TLPC2138-ROM.ld |
2 | c:/winarm/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(makebuf.o): In function `__smakebuf': |
3 | makebuf.c:(.text+0x3c): undefined reference to `_fstat_r' |
4 | makebuf.c:(.text+0x110): undefined reference to `isatty' |
5 | c:/winarm/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(stdio.o): In function `__sclose': |
6 | stdio.c:(.text+0xc): undefined reference to `_close_r' |
7 | c:/winarm/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(stdio.o): In function `__sseek': |
8 | stdio.c:(.text+0x30): undefined reference to `_lseek_r' |
9 | c:/winarm/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(stdio.o): In function `__swrite': |
10 | stdio.c:(.text+0x84): undefined reference to `_lseek_r' |
11 | stdio.c:(.text+0xac): undefined reference to `_write_r' |
12 | c:/winarm/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(stdio.o): In function `__sread': |
13 | stdio.c:(.text+0xd0): undefined reference to `_read_r' |
14 | collect2: ld returned 1 exit status |
15 | make.exe: *** [main.elf] Error 1 |
Was machen die einzelnen Funktionen? Kann man sie auch selbst schreiben? MfG Mark