Forum: Compiler & IDEs übergabe eines optionsfile an gcc 3.4.0


von olaf hoenel (Gast)


Lesenswert?

hallo leutz,
ich habe bisher mit dem gcc 3.2.0 gearbeitet. weil ich ein großes
projekt bearbeite, übergebe ich ein optionsfile:
z.b. -c -D '__int64=long long' -c -mcpu=arm7tdmi
     -O0
     -W
     -g
     -I....
     -I....
     .
     .

aufruf wie folt:
c:\.... gcc @optionsfile.txt blabla.cpp

das hat so funktioniert und nun habe ich auf gcc 3.4.0 umgestellt und
da gibt es diesen präfix(@-damit in das file geschaut wird) anscheinend
nicht mehr.
hat einer von euch eine lösung oder auch idee würde mir helfen ?

thx olaf

von OldBug (Gast)


Lesenswert?

Schau mal hier:

http://www.mikrocontroller.net/forum/read-2-111045.html#111171

Sollte das gleiche Problem sein...

von olaf hoenel (Gast)


Lesenswert?

vielen dank für die schnelle hilfe.

leider hat es nich funktioniert.
ich habe es auf der bash sowie im dos-command probiert.

meine eingabe(und weitere variationen):

c:\>gcc ´cat probe.cmds´ -c dummy.cpp

cat gehört zur unix-welt.mit dateiumlenkung (< {win}) habe ich es auch
schon probiert.hat alles nicht genutzt.

danke.werde weiter suchen

gruß olaf

von Jörg Wunsch (Gast)


Lesenswert?

Bitte lies richtig oder nimm cut&paste: das sind keine Apostrophe
(0x27) oder Akzente (0xb4, diese hast Du im Beitrag benutzt) oder
sowas, sondern Backticks (0x60).

Oder nimm gleich die zweite, modernere Variante ($( ... )).

> cat gehört zur unix-welt

Ich hätte gedacht, daß ein cat.exe in der Umgebung aber mit dabei ist.
Wenn nicht, ersetze es durch das DOS/Win Pendant "type".

> mit dateiumlenkung (< {win}) habe ich es auch schon probiert.hat
> alles nicht genutzt.

Klar, ist ja auch was komplett anderes.  Das lenkt die Standardeingabe
um, während die backtick substitution die Ausgabe des entsprechenden
Kommandos in die Kommandozeile des neuen Kommandos substituiert.  Das
kann man nur mit den Backticks oder mit $( ... ) schreiben, anders
nicht.

von olaf hoenel (Gast)


Lesenswert?

na dann such dir eine version raus.
ich habe hier ein paar probiert.
vielleicht ist die dabei von der du meinst sie würde funktionieren.

   C:\>avr-gcc $(type probe.txt) dummy.cpp
   Der Befehl "avr-gcc" ist entweder falsch geschrieben oder
   konnte nicht gefunden werden.

   C:\>gcc $(type probe.txt) dummy.cpp
   gcc: $(type: No such file or directory
   gcc: probe.txt): No such file or directory
   gcc: dummy.cpp: No such file or directory
   gcc: no input files

   C:\>gcc $(type probe.cmds) dummy.cpp
   gcc: $(type: No such file or directory
   gcc: probe.cmds): No such file or directory
   gcc: dummy.cpp: No such file or directory
   gcc: no input files

   C:\>gcc $(type c:\tmp\test\probe.cmds) c:\tmp\test\dummy.cpp
   gcc: `type: No such file or directory
   gcc: c:/tmp/test/probe.cpp): No such file or directory

   C:\>avr-gcc `cat probe.cmds` dummy.cpp
   Der Befehl "avr-gcc" ist entweder falsch geschrieben oder
   konnte nicht gefunden werden.

   C:\>gcc `cat probe.cmds` dummy.cpp
   gcc: `cat: No such file or directory
   gcc: probe.cmds`: No such file or directory
   gcc: dummy.cpp: No such file or directory
   gcc: no input files

   C:\>gcc `type probe.cmds` dummy.cpp
   gcc: `type: No such file or directory
   gcc: probe.cmds`: No such file or directory
   gcc: dummy.cpp: No such file or directory
   gcc: no input files

   C:\>gcc `type probe.cmds` c:\tmp\test\dummy.cpp
   gcc: `type: No such file or directory
   gcc: probe.cmds`: No such file or directory

   C:\>gcc `type c:\tmp\test\probe.cmds` c:\tmp\test\dummy.cpp
   gcc: `type: No such file or directory
   gcc: c:\tmp\test\probe.cmds`: No such file or directory

   C:\>gcc `type c:/tmp/test/probe.cmds` c:\tmp\test\dummy.cpp
   gcc: `type: No such file or directory
   gcc: c:/tmp/test/probe.cmds`: No such file or directory

   C:\>gcc `typec:/tmp/test/probe.cmds` c:\tmp\test\dummy.cpp
   gcc: `typec:/tmp/test/probe.cmds`: Invalid argument

wenn du noch eine idee hast dann laß es mich bitte wissen.
ansonsten vielen dank und ein schönes wochenende.

gruß olaf

von Matthias (Gast)


Lesenswert?

Hi

nimm eine Bash und keine Windows-Command-Shell.

Matthias

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.