amiga-news DEUTSCHE VERSION
.
Links| Forums| Comments| Report news
.
Chat| Polls| Newsticker| Archive
.

amiga-news.de Forum > Programmierung > SystemTags und gcc [ - Search - New posts - Register - Login - ]

-1- [ - Post reply - ]

2007-09-02, 19:59 h

Kaesebroetchen
Posts: 643
User
Hallo.

Ich bastel mal wieder mit dem aros gcc herum und versuche die Fehlermeldungen die der gcc in der shell ausgibt, für mein programm nutzbar zu machen. Ich habe jetzt um den Fehler einzugrenzen ein ganz kleines Testprogramm geschrieben:
c code:
#include <dos/dos.h>
#include <proto/dos.h>
#include <dos/dostags.h>


int main (int argc, char *argv[])
{
  BPTR TextDatei, TextDatei2;
  long result;
  TextDatei = Open("ram:OUT.txt",MODE_NEWFILE);
  TextDatei2 = Open("ram:ERR.txt",MODE_NEWFILE);

  result = SystemTags("dir sys:", SYS_Input,NULL,
                                                        SYS_Output,TextDatei,
                                                        SYS_Error,TextDatei2,
                                                        //SYS_Asynch,TRUE,
                                                        TAG_DONE);




  Close(TextDatei);
  Close(TextDatei2);

  return result;
}


Der obige code mit dem "dir" Befehl funktioniert wie erwartet und ich erhalte die Ausgaben in ram:out.txt.

Mache ich das gleiche mit dem gcc:
c code:
#include <dos/dos.h>
#include <proto/dos.h>
#include <dos/dostags.h>


int main (int argc, char *argv[])
{
  BPTR TextDatei, TextDatei2;
  long result;
  TextDatei = Open("ram:OUT.txt",MODE_NEWFILE);
  TextDatei2 = Open("ram:ERR.txt",MODE_NEWFILE);

  result = SystemTags("gcc cd1:test.c -o ram:test", SYS_Input,NULL,
                                                        SYS_Output,TextDatei,
                                                        SYS_Error,TextDatei2,
                                                        //SYS_Asynch,TRUE,
                                                        TAG_DONE);




  Close(TextDatei);
  Close(TextDatei2);

  return result;
}


dann bekomme ich nichts.
Starte ich den gcc per hand in der Shell, gibt er die Fehler korrekt aus.

Ich suche den Fehler jetzt schon seit Ewigkeiten und kriege es einfach nicht hin. Ich bin also für jeden Hinweis dankbar !
--
http://amidevcpp.amiga-world.de/

[ - Answer - Quote - Direct link - ]

2007-09-02, 21:07 h

Mazze
Posts: 263
User
@Kaesebroetchen:

Ich habe folgenden Verdacht: GCC ist ein Frontend, welches Kompiler und Linker aufruft. Kompiler und Linker laufen in einer eigenen Shell. Du bekommst deshalb nur die Meldungen, die der GCC selbst ausgibt.

Hast du mal getestet, ob es unter AmigaOS auch so ist?

--
AROS - Because every rose has its dorns.
Meine Homepage

[ - Answer - Quote - Direct link - ]

2007-09-02, 22:58 h

Kaesebroetchen
Posts: 643
User
Zitat:
Original von Mazze:
@Kaesebroetchen:

Du bekommst deshalb nur die Meldungen, die der GCC selbst ausgibt.


Wenn ich das Programm in einer Shell starte werden die Fehler in der Shell angezeigt. Meinst du also, das der Compiler und Linker das unter Umgehung des gcc frontends in der Shell ausgeben ?

Wenn das so ist habe ich natürlich ein Problem...

Zitat:
Hast du mal getestet, ob es unter AmigaOS auch so ist?

Nein. Ich habe zur Zeit nicht mal eine WinUAE Installation, geschweige denn mit installiertem gcc.

--
http://amidevcpp.amiga-world.de/

[ - Answer - Quote - Direct link - ]


-1- [ - Post reply - ]


amiga-news.de Forum > Programmierung > SystemTags und gcc [ - Search - New posts - Register - Login - ]


.
Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved.
.