arm-elf-gcc: unrecognized option `-mcpu=arm7tdmi'

Gast #2153469
Lesenswert?
• ▲
▼
Guten Abend,

ich versuche schon seit 2 Stunden ein Testprogramm für den LPC2478 zu 
kompilieren mit folgendem Ergebnis:

//---------------------------------------
Compiling C: main.c
arm-elf-gcc -c  -mcpu=arm7tdmi  -I. -gdwarf-2 -DROM_RUN  -Os -Wall 
-Wcast-align -Wcast-qual -Wimplicit  -Wpointer-arith -Wswitch 
-Wredundant-decls -Wreturn-type -Wshadow -Wunused -Wa,-adhlns=main.lst 
-MD -MP -MF .dep/main.o.d -Wstrict-prototypes -Wmissing-declarations 
-Wmissing-prototypes -Wnested-externs  -std=gnu99 main.c -o main.o

as: unrecognized option `-mcpu=arm7tdmi'
make: *** [main.o] Error 1

> Process Exit Code: 2
//----------------------------------------

Ich nutze WinARM-20060606 und den darin enthaltenen arm-elf-gcc unter 
Windows Vista Home Premium. Das Makefile ist ebenfalls aus einem 
Beispielprojekt aus WinARM.

Meine Pfadangabe sieht wie folgt aus:

//----------------------------------------
C:\WinARM\libexec\gcc\arm-elf\4.1.1;C:\WinARM\bin;C:\WinARM\arm-elf\bin;
C:\WinARM\utils\bin
//----------------------------------------

Für mich sieht es so aus, als ob der arm-elf-gcc die Option -mcpu und 
die Architektur arm7tdmi nicht erkennt, obwohl das Ganze in den Specs 
klar aufgelistet ist.
Nach einigem Ausprobieren und Testen ist mir außerdem aufgefallen, dass 
der arm-elf-gcc überhaupt keine einzige ARM-Controllerarchitektur 
erkennen will, was letztendlich am Nicherkennen der Option -mcpu zu 
liegen scheint.

Nun frage ich mich, wie das denn sein kann, dass mitunter die wichtigste 
Option überhaupt bei dieser ganzen Geschichte nicht funktionieren kann. 
Vielleicht aber mache ich irgendwo einen Fehler oder interpretiere hier 
einiges falsch und deshalb bitte ich an dieser Stelle um Rat.

Vielen Dank im Voraus
Gruß Alex
Gast #2153562
Lesenswert?
• ▲
▼
Hallo Kai,

nach hinzufügen der Option -v kommt folgendes Ergebnis:

//---------------------------------------------
Compiling C: main.c
arm-elf-gcc -c  -v -mcpu=arm7tdmi  -I. -gdwarf-2 -DROM_RUN  -Os -Wall 
-Wcast-align -Wcast-qual -Wimplicit  -Wpointer-arith -Wswitch 
-Wredundant-decls -Wreturn-type -Wshadow -Wunused -Wa,-adhlns=main.lst 
-MD -MP -MF .dep/main.o.d -Wstrict-prototypes -Wmissing-declarations 
-Wmissing-prototypes -Wnested-externs  -std=gnu99 main.c -o main.o
Using built-in specs.
Target: arm-elf
Configured with: ../../gcc-4.1.1/configure --enable-languages=c,c++ 
--enable-interwork --enable-multilib --with-gcc --with-gnu-ld 
--with-gnu-as --with-stabs --disable-shared --disable-threads 
--disable-libssp --disable-libstdcxx-pch --disable-libmudflap 
--disable-win32-registry --disable-nls --disable-debug --without-headers 
--with-newlib --target=arm-elf --prefix=c:/WinARM -v
Thread model: single
gcc version 4.1.1 (WinARM)
 cc1 -quiet -v -I. -iprefix c:\users\desktop\eigene 
arm-programme\lpc2478 board led-testprogramm\../lib/gcc/arm-elf/4.1.1/ 
-MD main.d -MF .dep/main.o.d -MP -MQ main.o -D__USES_INITFINI__ 
-DROM_RUN main.c -quiet -dumpbase main.c -mcpu=arm7tdmi -auxbase-strip 
main.o -gdwarf-2 -Os -Wall -Wcast-align -Wcast-qual -Wimplicit 
-Wpointer-arith -Wswitch -Wredundant-decls -Wreturn-type -Wshadow 
-Wunused -Wstrict-prototypes -Wmissing-declarations -Wmissing-prototypes 
-Wnested-externs -std=gnu99 -version -o ./ccAhaaaa.s
ignoring nonexistent directory "c:\users\desktop\eigene 
arm-programme\lpc2478 board 
led-testprogramm\../lib/gcc/arm-elf/4.1.1/include"
ignoring nonexistent directory "c:\users\desktop\eigene 
arm-programme\lpc2478 board 
led-testprogramm\../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/sys-includ 
e"
ignoring nonexistent directory "c:\users\desktop\eigene 
arm-programme\lpc2478 board 
led-testprogramm\../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/include"
ignoring nonexistent directory "c:/WinARM/arm-elf/sys-include"
#include "..." search starts here:
#include <...> search starts here:
 .
 c:/WinARM/lib/gcc/arm-elf/4.1.1/include
 c:/WinARM/arm-elf/include
End of search list.
GNU C version 4.1.1 (WinARM) (arm-elf)
  compiled by GNU C version 3.4.2 (mingw-special).
GGC heuristics: --param ggc-min-expand=99 --param 
ggc-min-heapsize=129768
Compiler executable checksum: 5cb80e272bf25e7fa000e5f0caa5b13e
 as -mcpu=arm7tdmi -adhlns=main.lst -o main.o ./ccAhaaaa.s
as: unrecognized option `-mcpu=arm7tdmi'
make.exe: *** [main.o] Error 1

> Process Exit Code: 2
> Time Taken: 00:00
//------------------------------------------------------

Irgendwie werde ich aus diesem Ergebnis nicht wirklich schlau, außer 
dass es einige 'nonexistent directory' gibt, die aber meiner Meinung 
nach nicht die Option -mcpu beeinflussen sollen !??!

Auf dem Laptop ist außerdem WinAVR-20100110 und MinGW für Eclipse C/C++ 
installiert, wobei ich im obigen Ergebnis auch keinen Zusammenhang mit 
dem Nichtfunktionieren der -mcpu Option erkennen kann.

Für jede weitere Idee/ Tipp bin ich sehr dankbar...
Gast #2153583
Lesenswert?
• ▲
▼
Kai schrieb:
> Ist vielleicht noch eine andere toolchain (avr ?) installiert, die mit
> dem ARM compiler ins Gehege kommt ?

Bingo!!

Habe WinAVR und MinGW aus dem Pfad entfernt und siehe da es 
funktioniert...

Besten Dank für den Tipp Kai

Schönen Abend noch
Gruß Alex

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.