J'essaie d'utiliser WinARM 4.1.1 pour compiler et lier des fichiers objet pour un projet BREW. J'ai commencé à utiliser cette page: http://brew.wardco.com/.Problème lié aux objets BREW sous WinARM4.1x
La première chose à noter est que j'ai travaillé avec succès sous la chaîne d'outils GNUDE. Quand je suis passé à WinARM, j'ai d'abord eu à travailler jusqu'à ce que je remarque que j'avais -Lc:/gnude/arm-elf/lib au lieu de -Lc:/WinARM/arm-elf/lib dans le chemin de ma bibliothèque de liens. Je ne veux évidemment pas avoir les deux systèmes en place dans mon environnement. L'utilisation du chemin d'accès de la bibliothèque WinARM provoque l'obtention des erreurs de l'éditeur de liens suivantes:
c:/WinARM/arm-elf/lib\libsupc++.a(eh_personality.o): In function `read_encoded_value_with_base':
c:/winarms/gcc-4.1.1/gcc/unwind-pe.h:259: undefined reference to `abort'
c:/WinARM/arm-elf/lib\libsupc++.a(eh_personality.o): In function `base_of_encoded_value':
c:/winarms/gcc-4.1.1/gcc/unwind-pe.h:122: undefined reference to `abort'
c:/winarms/gcc-4.1.1/gcc/unwind-pe.h:122: undefined reference to `abort'
c:/WinARM/arm-elf/lib\libsupc++.a(eh_personality.o): In function `size_of_encoded_value':
c:/winarms/gcc-4.1.1/gcc/unwind-pe.h:90: undefined reference to `abort'
c:/WinARM/arm-elf/lib\libsupc++.a(eh_terminate.o): In function `__cxxabiv1::__terminate(void (*)())':
../../../../../gcc-4.1.1/libstdc++-v3/libsupc++/eh_terminate.cc:44: undefined reference to `abort'
c:/WinARM/arm-elf/lib\libsupc++.a(eh_terminate.o):../../../../../gcc-4.1.1/libstdc++-v3/libsupc++/eh_terminate.cc:46: more undefined references to `abort' follow
c:/WinARM/arm-elf/lib\libc.a(fopen.o): In function `_fopen_r':
fopen.c:(.text+0x48): undefined reference to `_open_r'
c:/WinARM/arm-elf/lib\libc.a(freer.o): In function `_malloc_trim_r':
mallocr.c:(.text+0x48): undefined reference to `_sbrk_r'
mallocr.c:(.text+0x64): undefined reference to `_sbrk_r'
mallocr.c:(.text+0x84): undefined reference to `_sbrk_r'
c:/WinARM/arm-elf/lib\libc.a(fseek.o): In function `_fseek_r':
fseek.c:(.text+0x158): undefined reference to `_fstat_r'
fseek.c:(.text+0x1b0): undefined reference to `_fstat_r'
c:/WinARM/arm-elf/lib\libc.a(makebuf.o): In function `__smakebuf':
makebuf.c:(.text+0x3c): undefined reference to `_fstat_r'
makebuf.c:(.text+0x110): undefined reference to `isatty'
c:/WinARM/arm-elf/lib\libc.a(mallocr.o): In function `_malloc_r':
mallocr.c:(.text+0x424): undefined reference to `_sbrk_r'
mallocr.c:(.text+0x4cc): undefined reference to `_sbrk_r'
c:/WinARM/arm-elf/lib\libc.a(stdio.o): In function `__sclose':
stdio.c:(.text+0xc): undefined reference to `_close_r'
c:/WinARM/arm-elf/lib\libc.a(stdio.o): In function `__sseek':
stdio.c:(.text+0x30): undefined reference to `_lseek_r'
c:/WinARM/arm-elf/lib\libc.a(stdio.o): In function `__swrite':
stdio.c:(.text+0x84): undefined reference to `_lseek_r'
stdio.c:(.text+0xac): undefined reference to `_write_r'
c:/WinARM/arm-elf/lib\libc.a(stdio.o): In function `__sread':
stdio.c:(.text+0xd0): undefined reference to `_read_r'
c:/WinARM/arm-elf/lib\libc.a(syswrite.o): In function `write':
syswrite.c:(.text+0x24): undefined reference to `_write_r'
C:\WinARM/lib/gcc/arm-elf/4.1.1/\libgcc.a(unwind-sjlj.o): In function `_Unwind_RaiseException_Phase2':
../../../gcc-4.1.1/gcc/unwind.inc:75: undefined reference to `abort'
C:\WinARM/lib/gcc/arm-elf/4.1.1/\libgcc.a(unwind-sjlj.o): In function `_Unwind_SjLj_Resume':
../../../gcc-4.1.1/gcc/unwind.inc:238: undefined reference to `abort'
C:\WinARM/lib/gcc/arm-elf/4.1.1/\libgcc.a(unwind-sjlj.o): In function `_Unwind_SjLj_Resume_or_Rethrow':
../../../gcc-4.1.1/gcc/unwind.inc:263: undefined reference to `abort'
NMAKE : fatal error U1077: 'C:\WinARM\bin\arm-elf-ld.EXE' : return code '0x1'
Stop.
Je ne suis pas sûr de savoir comment résoudre ce problème; il semble que je manque simplement un chemin quelque part, mais quel chemin? Je remarque qu'il y a des "chemins" c: \ winarms \ gcc-4.1.1 ... "listés ... ce n'est pas un emplacement sur mon ordinateur. Est-ce une référence de la bibliothèque?
Tout aperçu serait apprécié.