Gast
#1835561
Ich versuche gerade mit der arm-elf-gcc toolchain von hier: http://embdev.net/articles/ARM_GCC_toolchain_for_Linux_and_Mac_OS_X (OS X Intel) folgendes Projekt zu bauen: http://jcwren.com/arm/ Nun erst einmal hat er ein bischen proble mit ein paar assember befehlen (push {r0} und pop {r0}) Das kommt aber nur im keyboard und lcd sachen vor, also hab ich die einfach rausgenommen, da ich die sowieso nicht brauche. Dann compiliert alles. Nur das linken geht jetzt noch schief. Es scheint irgendwie was mit der Newlib schief zu gehen. So wie ich das verstehe wurde in der arm-elf-gcc toolchain Newlib ja ohne Syscalls compiliert. Da die ja ohne os nicht wirklich vorhanden sind. Jetzt gibt es im lpc2148_demo Projekt ein Datei newlib/syscalls.c welche ja die nötigen syscalls bereitstellt. Nur der linker findet das irgendwie nicht. Ich erhalte folgenden Fehler: mediaplayer:lpc2148_demo tpost$ make /Users/tpost/Downloads/lpc2148_demo/common/common.a(ff.o): In function `f_sync': /Users/tpost/Downloads/lpc2148_demo/fatfs/ff.c:1140: undefined reference to `get_fattime' /Users/tpost/Downloads/lpc2148_demo/common/common.a(ff.o): In function `f_mkdir': /Users/tpost/Downloads/lpc2148_demo/fatfs/ff.c:1533: undefined reference to `get_fattime' /Users/tpost/Downloads/lpc2148_demo/common/common.a(ff.o): In function `f_open': /Users/tpost/Downloads/lpc2148_demo/fatfs/ff.c:917: undefined reference to `get_fattime' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(mal locr.o): In function `_malloc_r': ../../../.././newlib/libc/stdlib/mallocr.c:2160: undefined reference to `_sbrk_r' ../../../.././newlib/libc/stdlib/mallocr.c:2197: undefined reference to `_sbrk_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(std io.o): In function `__sclose': ../../../.././newlib/libc/stdio/stdio.c:120: undefined reference to `_close_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(std io.o): In function `__sseek': ../../../.././newlib/libc/stdio/stdio.c:103: undefined reference to `_lseek_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(std io.o): In function `__swrite': ../../../.././newlib/libc/stdio/stdio.c:76: undefined reference to `_lseek_r' ../../../.././newlib/libc/stdio/stdio.c:84: undefined reference to `_write_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(std io.o): In function `__sread': ../../../.././newlib/libc/stdio/stdio.c:47: undefined reference to `_read_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(sys times.o): In function `times': ../../../.././newlib/libc/syscalls/systimes.c:11: undefined reference to `_times_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(tim e.o): In function `time': ../../../.././newlib/libc/time/time.c:50: undefined reference to `_gettimeofday_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(fre er.o): In function `_malloc_trim_r': ../../../.././newlib/libc/stdlib/mallocr.c:3326: undefined reference to `_sbrk_r' ../../../.././newlib/libc/stdlib/mallocr.c:3335: undefined reference to `_sbrk_r' ../../../.././newlib/libc/stdlib/mallocr.c:3340: undefined reference to `_sbrk_r' /opt/arm/bin/../lib/gcc/arm-elf/4.1.0/../../../../arm-elf/lib/libg.a(mak ebuf.o): In function `__smakebuf': ../../../.././newlib/libc/stdio/makebuf.c:52: undefined reference to `_fstat_r' collect2: ld returned 1 exit status make: *** [lpc2148.elf] Error 1 mediaplayer:lpc2148_demo tpost$ Kann mir da irgendjemand weiterhelfen?