ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > Gcc (Include path) | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
-1- | [ - Beitrag schreiben - ] |
01.08.2002, 12:53 Uhr DariusBrewka Posts: 899 [Benutzer gesperrt] |
Hallo an Alle, bisher habe ich den vbcc Compiler benutzt, aber aufgrund von einigen Fehlern (wohlmöhlich nur bei mir), und aus gründen der "Zuckunftssicherheit" wollte ich mein Programm an den gcc anpassen. Zuerst habe ich gcc2.70 instlliert, es ging auch "gut", nur konnte ich nicht ohne C(++) Kommentare leben und alle Header dateien umzuschreiben war auch nicht mein wunsch. Folglich habe ich gcc2.95 (link irgendwo unter news hier), nur bekomme ich hier nicht hin einen Suchpfad für die Include Dateien anzugeben, damit meine ich jetzt nicht die "-I" option, sondern den Standardpfad, sodass ich auch andere Sources durch einfaches "make" compilieren kann, ohne die Makefiles erst anzupassen und überall "-i=xyz" zu schreiben. In den Anleitungen konnte ich absolut nichts finden. gruss Darius [ - Antworten - Zitieren - Direktlink - ] |
02.08.2002, 13:23 Uhr Holger Posts: 8116 Nutzer |
Welche includes findet der Compiler denn nicht? Wenn Du system-includes meinst, liegt das Problem bei Deiner Installation, bei projektbezogenen header-files müssen sie halt ins Makefile. Das zwei völlig verschiedene Dinge. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
02.08.2002, 14:12 Uhr Georg Posts: 107 Nutzer |
Du könntest versuchen im GCC "specs" File etwas rumzubasteln. Dieses File findest du bei dir wahrscheinlich unter gg:lib/gcc-lib/m68k-amigaos/2.95.3/specs Sonst halt mit search suchen. Dann in nen Text Editor laden und dort die "*cpp:" Zeile suchen. An die Zeile darunter dann z. B. -Ideinincludeverzeichnis am Ende anhängen. ciao, Georg [ - Antworten - Zitieren - Direktlink - ] |
02.08.2002, 14:29 Uhr DariusBrewka Posts: 899 [Benutzer gesperrt] |
Danke, es lag an der Installation. Wie gesagt habe ich mit dem Gcc noch nie gearbeitet und ich hätte nicht gedacht dass man bei der Installation eines 20MB Compilers noch 1000 andere archive runterladen muss. Vieleicht noch etwas, wenn ich ein simples programm z.B. helloworld. compiliere, so läuft es wie es soll, wenn ich das flag -noixemul definiere. Wenn ich aber meines, was unter vbcc ohne probleme läuft, so kommt unter gcc (gcc -ixemul ....) ein requester der das fehlen der "rexxsyslib.library" v37 bemängelt. Ich habe keine V37 und ich habe in meinem code auch kein requester der das anzeigen könnte. Ich dachte, dass ich das per int initlibraries = 0; abstellen könnte, aber dann schmiert alles ab, auch wenn ich main() ganz leer lasse. danke [ - Antworten - Zitieren - Direktlink - ] |
02.08.2002, 18:41 Uhr Holger Posts: 8116 Nutzer |
Zitat:Was denn nun, -noixemul oder -ixemul? Wenn Du mit ixemul übersetzt, öffnet Dein Programm die ixemul.library, die versucht die bsdsocket.library zu öffnen, was dann passiert, hängt von Deinem TCP/IP-Stack ab... Vielleicht liegts ja daran. mfg -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
03.08.2002, 01:30 Uhr DariusBrewka Posts: 899 [Benutzer gesperrt] |
die option hiess natürlich -noixemul, -ixemul gibt's doch gar nicht. gruss Darius [ - Antworten - Zitieren - Direktlink - ] |
06.08.2002, 15:45 Uhr gni Posts: 1106 Nutzer |
@DariusBrewka: >Vieleicht noch etwas, wenn ich ein simples programm z.B. helloworld. >compiliere, so läuft es wie es soll, wenn ich das flag -noixemul >definiere. Wenn ich aber meines, was unter vbcc ohne probleme läuft, >so kommt unter gcc (gcc -ixemul ....) ein requester der das fehlen >der "rexxsyslib.library" v37 bemängelt. Das auto-open Feature von libnix (-noixemul) verwendet 37 als Version für zu öffnende Bibliotheken. >Ich habe keine V37 und ich habe in meinem code auch kein requester >der das anzeigen könnte. Es gibt auch keine v37. Der Requester kommt aus einer Linkerlibrary. >Ich dachte, dass ich das per int initlibraries = 0; abstellen könnte, >aber dann schmiert alles ab, auch wenn ich main() ganz leer lasse. Das sollte eigentlich nicht passieren... Muß ich doch mal ausprobieren. BTW, initlibraries ist auch der falsche Knopf ;-) Versuchs mal mit ULONG __oslibversion = 36; // oder 0 Das hat aber den Nachteil, das dann generell nur die Version 36 verlangt wird. Alternativ kannst Du ja auch nur die rexxsyslib.library selber öffnen. Das geht so: #include <proto/exec.h> #include <proto/rexxsyslib.h> struct RxsLib *RexxSysBase = NULL; // =NULL ist wichtig wenn global! main() { // oder per lokaler Basis, wenn RexxSysBase nicht extern verwendet // wird // APTR RexxSysBase; if ((RexxSysBase=OpenLibary(RXSNAME, 36))!=NULL){ CloseLibrary(RexxSysBase); } } [ - Antworten - Zitieren - Direktlink - ] |
06.08.2002, 15:47 Uhr gni Posts: 1106 Nutzer |
@Georg: >Du könntest versuchen im GCC "specs" File etwas rumzubasteln. Genau *das* macht man *nicht* [ - Antworten - Zitieren - Direktlink - ] |
06.08.2002, 17:38 Uhr DariusBrewka Posts: 899 [Benutzer gesperrt] |
@gni genau das mache ich auch, da ich die rexxsyslib.library brauche, aber ich habe die Version 36 und darum habe ich auch das mit der "oslibversion = 36" methode gemacht. Ich will die Bibliotheken selber öffnen, ich brauche den Argument Parser von libnix nicht!, da mein Programm nicht aus der Shell startbar ist. [ - Antworten - Zitieren - Direktlink - ] |
07.08.2002, 10:43 Uhr gni Posts: 1106 Nutzer |
@DariusBrewka: > da ich die rexxsyslib.library brauche, aber ich habe die Version 36 Eine neuere gibt es auch *nicht* >Ich will die Bibliotheken selber öffnen, Deswegen hast Du initlibraries abgeklemmt? Das sollte man nur tun, wenn man nichts (wichtiges) aus den Linkerbibliotheken benutzt. >ich brauche den Argument Parser von libnix nicht int __nocommandline = 1; [ - Antworten - Zitieren - Direktlink - ] |
07.08.2002, 13:42 Uhr DariusBrewka Posts: 899 [Benutzer gesperrt] |
@gni komisch dass dann libnix die rexxsyslib.library V37 öffnen will :-(, das mit nocommandline=1 habe ich gemacht, und trotzdem braucht er dann die rexxsyslib, obwohl in der guide steht dass diese für's parsen gebraucht wird. [ - Antworten - Zitieren - Direktlink - ] |
07.08.2002, 14:15 Uhr gni Posts: 1106 Nutzer |
@DariusBrewka: >komisch dass dann libnix die rexxsyslib.library V37 öffnen will :-(, Nicht komisch. Das liegt an der Art und Weise, wie Auto-Opening von libnix funktioniert. Es gibt nur eine Versionsnummer die zum öffnen aller Bibliotheken verwendet wird. Dieser Vorgabewert ist halt 37. Das funktioniert hlat nicht für alle Bibliotheken. Aber die kann man ja bei Bedarf bequem mit der richtigen Version per Hand öffnen. >das mit nocommandline=1 habe ich gemacht, und trotzdem braucht er >dann die rexxsyslib, obwohl in der guide steht dass diese für's >parsen gebraucht wird. Auf keinen Fall. Im Guide von libnix wird die rexxsyslib gar nicht erwähnt. Wenn das fertige Programm versucht die rexxsyslib zu öffnen, dann werden Funktionen der Bibliothek auf irgendeine Weise von Deinem Programm referenziert. Das hat aber absolut nichts mit libnix zu tun. [ Dieser Beitrag wurde von gni am 07.08.2002 editiert. ] [ - Antworten - Zitieren - Direktlink - ] |
-1- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > Gcc (Include path) | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |