AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

GCC und zu langer Aufruf

Ein Thema von Nils_13 · begonnen am 8. Aug 2007 · letzter Beitrag vom 8. Aug 2007
Antwort Antwort
Seite 1 von 3  1 23      
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#1

GCC und zu langer Aufruf

  Alt 8. Aug 2007, 17:26
Hi,

ich arbeite schon seit einiger Zeit an einer kleinen IDE für Linux/Windows, die übersichtlich sein soll und Projektdateien verwalten kann. Wenn ich ein Projekt (mein kleines OS) hernehme und soweit alles eingestellt habe, wird der Aufruf allerdings viel zu lang:
Zitat:
gcc -g -c -Wall -fleading-underscore -Wall -ffreestanding -nostdlib -fno-builtin -nostdinc -I /mnt/datene/13/Source/asm/start.asm /mnt/datene/13/Source/asm/isrs.asm /mnt/datene/13/Source/asm/irq.asm /mnt/datene/13/Source/include/grub.h /mnt/datene/13/Source/include/types.h /mnt/datene/13/Source/include/timer.h /mnt/datene/13/Source/include/stdlib.h /mnt/datene/13/Source/include/multiboot.h /mnt/datene/13/Source/include/languages.h /mnt/datene/13/Source/include/keyboardinput.h /mnt/datene/13/Source/include/keyboard.h /mnt/datene/13/Source/include/kernel.h /mnt/datene/13/Source/include/isrs.h usw.
Man könnte einfach cd ausführen (geht zum Glück sogar bei beiden Systemen ) und somit schon viele Pfadangaben sparen, aber das wäre keine Lösung, da es dann bei gewissen Projekten dennoch viel zu lang werden könnte. Kann der GCC Indexdateien (eine Datei, die alle Dateipfade beinhaltet und vom Compiler auseinandergenommen wird; konnte ich über Google nicht rausfinden) oder gibt es eine andere Lösung ?

Ein Beweis dafür, dass es geht ist z.B. CodeBlocks.
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 17:43
Hi,
der Schalter -I wird bei der GCC nicht dazu benutzt eine einzelne Datei sondern ein Verzeichnis einzubinden, alle Dateien die direkt in diesem Verzeichnis liegen werden damit automatisch berücksichtigt!

Gruß Der Unwisssende
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#3

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 17:44
Ok, aber mal abgesehen davon, hat ein Terminal eine 255er Zeichenbeschränkung.
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#4

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 17:46
Zitat von Nils_13:
Ok, aber mal abgesehen davon, hat ein Terminal eine 255er Zeichenbeschränkung.
Aha.
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#5

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 17:47
Würde ich -I weglassen, würde schonmal soweit alles stimmen, allerdings zu lang sein, da das weniger als die Hälfte von der gesamten Zeile ist.
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#6

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 17:54
Zitat von Nils_13:
Würde ich -I weglassen, würde schonmal soweit alles stimmen, allerdings zu lang sein, da das weniger als die Hälfte von der gesamten Zeile ist.
Ok, aber Du kannst auch einfach mit der -c Option jede Datei einzeln übersetzen. Klar, ist der Pfad dann länger als 255 Zeichen hast Du ein Problem (vorallem weil Du weil Du einen solch langen Pfad wählst!). Was die Beschränkung auf 255 Zeichen angeht, von wessen Terminal sprichst Du? Windows? Oder ein Unix-Derivat? Sollte LEtzteres der Fall sein, welche Shell? Oder gilt die Beschränkung überall?
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#7

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 17:55
Vorschlag:

Code:
gcc < cmdline.txt REM gcc aufrufen mit input aus cmdline.txt
Müsst unter Windows funzen, obs die Linux-Bash anders macht weiß ich nicht.

EDIT: äh, ne, das füttert das file nur als std-input rein. irgendwas muss es doch da geben.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#8

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 18:19
Zitat von DGL-luke:
Müsst unter Windows funzen, obs die Linux-Bash anders macht weiß ich nicht.

EDIT: äh, ne, das füttert das file nur als std-input rein. irgendwas muss es doch da geben.
Unter Linux würde man wohl am ehesten etwas wie
Code:
gcc -c -... `cat cmdline.txt`
verwenden, das würde die Ausgabe von cat cmdline.txt (eben der Inhalt der Datei, durch cat gelesen) als Eingabe von gcc -c verwenden, aber da wäre dann schon die Frage, ob ein makefile nicht das gleiche leisten würde und ob es überhaupt diese Beschränkung auf 255 Zeichen gibt.
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#9

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 18:25
Ich erhielt vorhin eine Exception, die mir sagte, der String wäre leer, da ich so etwas vom eigenen System kenne , würde ich sagen, dass der Buffer geleert wurde.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#10

Re: GCC und zu langer Aufruf

  Alt 8. Aug 2007, 18:26
Code:
cat args.txt | xargs -0 gcc
Das wirft jede Zeile der Textdatei separat auf den gcc. Aber Achtung: hinter der letzten Zeile darf kein \n stehen, was aber standardmäßig der Fall ist.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz