Forum: Compiler & IDEs Windows GCC Parameterübergabe


von Mar IO (Gast)


Lesenswert?

Hi,

ich bin gerade dabei einen T900 von SIMcom selber zu programmieren bzw. 
erst einmal ein Demo zu laufen zu bekommen. Leider funktioniert das 
nicht. Kann man beim GCC unter Windows Slashes und Backslashes bei 
Pfadangaben bzw. Parameterübergaben bunt durcheinander mischen?

Von SIMcom habe ich eine IDE mit GCC uws. für Windows bekommen. Wenn 
jetzt make aufgerufen wird, dann bricht mir der GCC ab. Wie ist es so 
mit Slash und Backslash beim GCC?. Diese sind, siehe unten, beim Aufruf 
gemischt. Ist das so in Ordnung, oder nicht? Ich habe mal in den 
entsprechenden Dateien alle Slashes durch Backslashes ausgetauscht, dann 
gab's den Fehler, dass das Target ... nicht gefunden worden ist. Vllt. 
war ich da auch zu übermütig bzw. das Suchen+Ersetzen.
1
C:\Users\???\Documents\T900-IDE\T900DevIDE_MultiTask_GCC\TEST_03_GPIO>make OS=win  APPDIR=C:\Users\???\Documents\T900-IDE\T900DevIDE_MultiTask_GCC\TEST_03_GPIO 
2
3
C:\Users\???\Documents\T900-IDE/arm-none-eabi-gcc -c -mlong-calls -I ../EmbatSIM/gsmos/flinc -I.\ainc -mcpu=arm9e -mlittle-endian -mthumb-interwork -msoft-float -mfpu=vfp -Wall -Wstrict-prototypes -Os -o ../EmbatSIM/gsmos/flcode/fl_crt0.o ../EmbatSIM/gsmos/flcode/fl_crt0.S
4
5
process_begin: CreateProcess(NULL, C:\Users\???\Documents\T900-IDE/arm-none-eabi-gcc -c -mlong-calls -I ../EmbatSIM/gsmos/flinc -I.\ainc -mcpu=arm9e -mlittle-endian -mthumb-interwork -msoft-float -mfpu=vfp -Wall -Wstrict-prototypes -Os -o ../EmbatSIM/gsmos/flcode/fl_crt0.o ../EmbatSIM/gsmos/flcode/fl_crt0.S, ...) failed.
6
7
make (e=2): Das System kann die angegebene Datei nicht finden.
8
9
10
make: *** [../EmbatSIM/gsmos/flcode/fl_crt0.o] Error 2

PS:
- die Datei fl_crt0.S existiert
- make-Aufruf und Leerzeichen bei APPDIR hat ned so ganz funktioniert; 
bereits behoben
- obwohl Slash und Backslash gemischt sind, wird der GCC aufgerufen.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Mar IO schrieb:
> make (e=2): Das System kann die angegebene Datei nicht finden.

Das heißt, er findet den von dir genannten GCC nicht.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> C:\Users\???\Documents\T900-IDE/arm-none-eabi-gcc

Könnte es sein, daß der hier durch Fragezeichen ersetzte Benutzername 
ein Leerzeichen enthält?

von Mar IO (Gast)


Lesenswert?

Danke, das hat mir jetzt weiter geholfen! Zum Schluss hat noch ein 
Header gefehlt, den habe ich einfach erstellt (und leer gelassen) und 
nun hat's kompiliert. Ob's letztendlich funktioniert, kimmt dann boid 
auf...

von Mar IO (Gast)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Könnte es sein, daß der hier durch Fragezeichen ersetzte Benutzername
> ein Leerzeichen enthält?

Den Kompiler und den Rest habe ich neu installiert und darauf geachetet, 
dass keine Leerzeichen vorhanden sind.

Allerdings könnte ich schwören, dass gestern der Kompiler gefunden 
worden ist und dann hat der GCC gemekert, dass er "FILES" nicht findet. 
Was sicherlich mit dem alten Pfad C:/Program Files (x86)/... in 
Zusammenhang stand. Wie es aussieht, habe ich gestern etwas richtig 
gemacht und dann eigene Fehler wieder eingebaut.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Mar IO schrieb:
> dass er "FILES" nicht findet. Was sicherlich mit dem alten Pfad
> C:/Program Files (x86)/... in Zusammenhang stand.

Ja, man muss dann den Kommandonamen noch komplett in Quotes packen,
damit die Shell nicht zwei Worte draus macht.  Also statt
1
$(CC) $(CFLAGS) -c $<

muss dann stehen
1
"$(CC)" $(CFLAGS) -c $<

von Mar IO (Gast)


Lesenswert?

Die Programmierumgebung, die ich geliefert bekommen habe, baut auf eine 
Version von Scintilla auf. Wird Build All aufgerufen, so wird das 
Skript /run.cmd/ ausgeführt. In dem Skript gibt es die Zeile
1
make OS=win  APPDIR=%cd%

Die Leerzeichen in APPDIR haben dann Probleme bereitet. Jetzt weiß ich 
es nicht, vllt. hat der Aufruf von make schon Probleme bereitet... 
Mittlerweile mir aber egal, auf des muss ich nur achten (und für die 
Zukunft vermerken).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.