ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Suche | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
|
||||||
gni
Nutzer
24.05.2007, 12:43 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:In dem Fall wohl nicht. libnix fehlen einige stdio-Funktionen, u.a. auch getc(). Diese Funktionen sind als Makro in stdio.h vorhanden, müssen aber auch als echte Funktionen existieren. Bei fdopen liegt der Fall etwas anders. Es kann sein, das die von reth verwendete Version kein fdopen() hat. Da kann man nicht viel machen. Die fehlenden stdio-Funktionen können "nachgerüstet" werden, siehe dazu hier. Für fdopen() braucht es wohl eine neue(re) libnix Version, denke ich mal. |
|||||
gni
Nutzer
22.05.2007, 16:28 Uhr [ - Direktlink - ] |
Thema: MorphOS PowerUp startet nicht auf A4k (schwarzer Bildschirm)
Brett: MorphOS Zitat:Vermutlich will niemand mehrfach schreiben? Zitat:SFS, FFS, Algor, 68060.library, s-s, etc. |
|||||
gni
Nutzer
16.05.2007, 08:17 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Versuchs mal mit <slist.h> oder dann mit <ext/slist>. Wenn Du Deinen Code mit beiden Compilerversionen übersetzen willst, kommst Du vermutlich um Fallunterscheidungen mittels "__GNUG__ > 2" wohl nicht rum. Zitat:Die Frage hätte Dir -H beantwortet. Kurz gesagt, das ist vermutlich ein Seiteneffekt, da <string> zum Einbinden von <cstring> führt. Ob das immer so sein muß, weis ich nicht. Wenn Du nur die die Prototypen für die C-Stringfunktionen benötigst, dann solltest Du wie Holger treffend anmerkte <cstring> einbinden.Zitat:Hm bei mir hat hier wohl ein: |
|||||
gni
Nutzer
16.05.2007, 08:00 Uhr [ - Direktlink - ] |
Thema: Examine
Brett: Programmierung Zitat:Schlechter Rat. Abhängig vom Dateisystem ist Seek() um ein Vielfaches langsamer als Examine(). |
|||||
gni
Nutzer
15.05.2007, 15:13 Uhr [ - Direktlink - ] |
Thema: Examine
Brett: Programmierung Zitat:Da steht doch alles drin, was Du wissen mußt? Welche Werte "type" annehmen kann, ist in dos/dos.h dokumentiert (zb. DOS_FIB). Die Tagliste kann leer bleiben, entweder per NULL Argument oder eine leere Tagliste, die nur TAG_END enthält. |
|||||
gni
Nutzer
15.05.2007, 14:37 Uhr [ - Direktlink - ] |
Thema: Examine
Brett: Programmierung Zitat:Versuchs mal so: struct FileInfoBlock MurksFib; ... Examine( BPTRFileLock, &MurksFib ); return MurksFib.fib_Size; und selbst das hat noch Potential für Nichtfunktionieren, da der FileInfoBlock langwortausgerichtet sein muß, dh. man braucht noch eine __aligned Direktive, die jedoch Compilerabhängig ist. Wenn Du das alles umgehen möchtest, dann allokierst Du den FileInfoBlock per AllocDosObject(), den Du dann natürlich per FreeDosObject() wieder freigeben mußt. |
|||||
gni
Nutzer
15.05.2007, 09:52 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Sei froh das 3.3 das Benutzen von Funktionen ohne Prototype anmeckert. Du mußt _immer_ den entsprechenden Header für eine Funktion einbinden. Zitat:Dir fehlt nur "#include <string.h>". Zitat:Defaultargumente sind nur in der Class-Definition zulässig. Neuere GCC Versionen halten sich in vielen Fällen strikter an Standards und finden mehr Probleme. Du solltest darüber nachdenken, auch bei GCC2 mit -W -Wall zu übersetzen. Auch da sollten dann etwaige Probleme bereits diagnostiziert werden. Zitat:Wo das im Standard steht, kann ich Dir auch nicht sagen. Nimms einfach hin ;-) |
|||||
gni
Nutzer
12.05.2007, 19:58 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Die Option -H zeigt Dir welche Includes benutzt werden. |
|||||
gni
Nutzer
12.05.2007, 19:57 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Kein GoldED. Getestet habe ich mit Cross-Compilern, aber meine GCC Installtion unter AmigaOS ist prinzipiell die gleiche bezüglich Compiler und Includes. |
|||||
gni
Nutzer
11.05.2007, 22:39 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:FWIW, kein Fehler mit allen von mir getesten GCC Versionen (2.95.x, 3.3.6, 3.4.6, 4.0.0, 4.1.0) |
|||||
gni
Nutzer
11.05.2007, 14:13 Uhr [ - Direktlink - ] |
Thema: WBStartup Message
Brett: Programmierung Zitat:Die WB-Message darf definitiv erst am Programmende zurückgeschickt werden, da die WB nach dem ReplyMsg() den vom Programm belegten Speicher wieder freigibt (UnloadSeg). Deswegen muß das ReplyMsg() auch per Forbid() geschützt werden. |
|||||
gni
Nutzer
11.05.2007, 12:31 Uhr [ - Direktlink - ] |
Thema: WBStartup Message
Brett: Programmierung Zitat:Solange eine Nachricht in Deinem "Besitz" ist, kannst Du diese untersuchen. Kopieren einer Nachricht ist nicht möglich, wie sollte das auch gehen? Zitat:Da solltest Du wirklich nochmal schauen, weil so kann es nicht funktionieren. Zitat:WBStartup-Nachricht wird im Startupcode verarbeitet. Im NDK sollte irgendwo eine Quelle des C= Startupcodes sein (ist Assembler). Ansonsten gibt es viele Programme im AmiNet, die ohne Startupcode arbeiten und sich selbst um CLI/WB kümmern, zb. TolleUhr ;-) |
|||||
gni
Nutzer
11.05.2007, 10:02 Uhr [ - Direktlink - ] |
Thema: WBStartup Message
Brett: Programmierung Zitat:Nein. Wenn eine Nachricht bereits zurückgeschickt wurde, darf sie nicht mehr dereferenziert werden. Zitat:Man darf nicht nur, man _muß_. Zitat:Guru-Buch? RKMs? NDK? Beispielcode? [ Dieser Beitrag wurde von gni am 11.05.2007 um 10:03 Uhr geändert. ] |
|||||
gni
Nutzer
11.05.2007, 08:53 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:HOOKFUNC ist ein Typedef eines Funktionszeigers. Zitat:Wenn man den richtigen Typ nimmt, kann man das auch erwarten. Der Compiler hat Dir ja gesagt, was er erwartet. Zitat:Weil 2.95.x nicht so genau hingeschaut hat? HOOKFUNC ist prinzipiell richtig. Allerdings gibt es unterschiedliche Defintionen von h_[Sub]Entry, mal mit und mal ohne Parameter. Und noch was: <slist> gibt es sehr wohl auch bei GCC3! |
|||||
gni
Nutzer
09.05.2007, 12:51 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Ja, so meine ich das. |
|||||
gni
Nutzer
09.05.2007, 08:57 Uhr [ - Direktlink - ] |
Thema: Picasso96 aktuell
Brett: Amiga, AmigaOS 4 Zitat:Die emulation.library aus diesem Archiv konnte auf meinem System beim Booten nicht geladen werden, dh. mir fehlte die cybergraphics.library. Nachladen per Hand hat allerdings funktioniert. Ich würde empfehlen, bei 2.0 und dem nachgeschobenen rtg.library Update zu bleiben. |
|||||
gni
Nutzer
09.05.2007, 08:50 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Wenn Du mit -v übersetzt, dann kannst Du sehen, in welchen Verzeichnissen Includes gesucht werden. Zitat:Sieht nicht so aus. Du kannst ja mal die Verzeichnisse mit diff vergleichen. |
|||||
gni
Nutzer
08.05.2007, 12:28 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Wenn im Include-Verzeichnis des 3.3 Baum wirklich ein g++-3 Verzeichnis zu finden ist, dann gehört das definitiv nicht dahin -> Löschen. [ Dieser Beitrag wurde von gni am 08.05.2007 um 12:29 Uhr geändert. ] |
|||||
gni
Nutzer
08.05.2007, 09:40 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Bei den Listings der Verzeichnisse ist nirgends g++-3 zu finden. Bist Du sicher, das das wirklich auch bei 3.3 vorhanden ist? Zitat:Wenn Dich das wirklich interessiert, dann mußt Du auf der GCC Entwickler-ML nachfragen ;-) Zitat:Das weis ich nicht, vermutlich aber eher nicht. Nimm "list" und gut. |
|||||
gni
Nutzer
07.05.2007, 08:56 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Was soll "eigener Verzeichnisbaum" bedeuten? Die C++ Includes liegen normalerweise in gg:include, dh. beide Compiler benutzen gg:includes für die Includesuche. Aber auch wenn die C++ Includeverzeichnisse in dem Verzeichnis sind, so sucht doch jeder Compiler nur in seinem eigenen C++ Verzeichnis. Zitat:Bitte etwas ausführlicher. |
|||||
gni
Nutzer
05.05.2007, 20:13 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Vermutlich deswegen: The slist class, and the slist header, are an SGI extension; they are not part of the C++ standard. Zitat:Im Verzeichnis g++-3 sind die C++ Header für GCC 2.95.x, im Verzeichnis c++ sind die C++ Header von GCC3. Da Du sowohl 2.95.x als auch 3.x installiert hast, sind logischerweise beide Verzeichnisse vorhanden. Zitat:Das macht man auch nicht und kann man auch nicht machen! Jeder C++ Compiler hat seine _eigenen_ Header und auch _nur_ die kann man mit dem jeweiligen Compiler auch nur verwenden! Wo der Compiler seine Standard-Includes findet, weiss der Compiler selbst. |
|||||
gni
Nutzer
04.05.2007, 17:05 Uhr [ - Direktlink - ] |
Thema: Exectuable Pfad und Icon
Brett: Programmierung Zitat:Oops, richtig ich meinte PROGDIR: :-P Zitat:Hast Du kein NDK? Da stehen doch alle Funktionen drin AFAIR, seit 2.0 gibt es GetProgramDir(), das Dir eventuell weiterhilft. Zitat:WB oder CLI unterscheidet man mittel pr_CLI aus der Prozeßstruktur. Wenn der Eintrag NULL ist, dann wurde der Prozeß von der WB gestartet und man muß die WB-Message einsammeln. Ist das nicht Amiga-Grundwissen? ;-) |
|||||
gni
Nutzer
04.05.2007, 15:49 Uhr [ - Direktlink - ] |
Thema: Exectuable Pfad und Icon
Brett: Programmierung Zitat:Reicht statt des richtigen Pfades auch HOMEDIR:? Eventuell kann man darüber auch den wirklichen Pfad ermitteln. Den Namen des Programmes rauszufinden, ist schon schwieriger. Bei Standard-C ist der in argv[0] zu finden (eventuell sogar mit Pfad) ;-) Ansonsten im Icon (WB) oder in der CLI-Struktur nachschauen. Dafür gibt es seit 2.0 auch spezielle Zugriffsfunktionen in der dos.libary (Get...). Zitat:Vorausgesetzt das Programm ist über die WB gestartet worden, kann man doch alles aus WBStartup rauskramen? An des Projekttool sollte man auch bei Projekticons rankommen. |
|||||
gni
Nutzer
04.05.2007, 08:37 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Dan solltest Du dich damit vertraut machen. GCC2 hat einige Dinge laxer gehandhabt als die Nachfolgeversionen. Zitat:Wenn der obige Code mit GCC3 Probleme macht, dann liegt es definitiv am fehlenden Namespace. Entweder Du verpaßt jedem nacktem string den Prefix "std::" oder Du arbeitest mit "using namspace std;". Die Prefixvariante funktioniert im übrigen auch mit GCC2.95.x.C++ code:Gab keine Probleme beim comilieren!#include <string> ... void setTitle(const string title = "") { displayTitle = title; } |
|||||
gni
Nutzer
03.05.2007, 12:19 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Ich würde eher auf den Namespace tippen... |
|||||
gni
Nutzer
03.05.2007, 12:17 Uhr [ - Direktlink - ] |
Thema: C++ von GCC 2.95.3 nach GCC 3.3 portieren
Brett: Programmierung Zitat:Die Frage bezieht sich nicht auf ppc-amigaos sondern auf m68k-amigaos. |
|||||
gni
Nutzer
26.04.2007, 12:33 Uhr [ - Direktlink - ] |
Thema: NetBSD in 50 Hz PAL Modus booten?
Brett: Andere Systeme Zitat:Wenn Du AGA eh nicht benutzen kannst (und willst), kannst Du es auch weglassen. AFAIR braucht man auch GRF_NTSC. Zitat:Die stehen alle in GENERIC drin, aber das hast Du ja bereits gefunden. |
|||||
gni
Nutzer
25.04.2007, 16:06 Uhr [ - Direktlink - ] |
Thema: NetBSD in 50 Hz PAL Modus booten?
Brett: Andere Systeme Zitat:Wie bootest Du? Über das Early Startup Menu? Beim Booten per Bootblock wird standardmäßig AGA benutzt, wenn vorhanden. Der dafür zuständige Parameter ist 'A'. Ohne 'A' wird PAL/NTSC verwendet, ob dann ohne oder mit Interlace gearbeitet wird, weiss ich nicht. Zitat:'S' hat mit dem Grafikmodus nichts zu tun. Mit 'S' wird das Laden der Kernelsymbole veranlaßt. |
|||||
gni
Nutzer
23.04.2007, 16:51 Uhr [ - Direktlink - ] |
Thema: streifen in der pal-anzeige auf vga
Brett: Amiga, AmigaOS 4 Zitat:Zu altes Flash? Ansonsten hast Du was falsch gemacht .-) Ich hatte mit TNG keine Probleme den FliFi zu programmieren. Zitat:Im Bootmenu kann man den Flickerfixer _nicht_ programmieren! Das geht definitiv nur mit TNG. |
|||||
gni
Nutzer
20.04.2007, 08:40 Uhr [ - Direktlink - ] |
Thema: streifen in der pal-anzeige auf vga
Brett: Amiga, AmigaOS 4 Zitat:Der FlickerFixer wird mit PicassoModeTNG eingestellt. Wo man das herbekommt, weis ich nicht. Die Homepage von Picasso96 ist leider weg und im AmiNet ist das Archiv nicht. |
|||||
|
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |