Programm lässt sich nicht kompilieren
Programm lässt sich nicht kompilieren
Folgendes Projekt: http://www.naums-project.net.tf/src/INI ... IMaker.tar
warum geht das als "Debug" gar nicht zu kompilieren, bzw. als "Release" zwar zu kompilieren aber stürzt direkt nach dem Start ab. Die Debug EXE war 2MB groß die Release lediglich 300KB
warum geht das als "Debug" gar nicht zu kompilieren, bzw. als "Release" zwar zu kompilieren aber stürzt direkt nach dem Start ab. Die Debug EXE war 2MB groß die Release lediglich 300KB
.globl truth
truth:
mov r0, #42
mov pc, lr
truth:
mov r0, #42
mov pc, lr
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Programm lässt sich nicht kompilieren
Wie wäre es mit einer genueren Fehlerbeschreibung, bzw. Fehlermeldungen beim Compilieren oder Meldungen nach/wärend dem Absturz deines Programmes.
Mit welchem Compiler Compiliert, auf welcher Platform?
Was nutzt du in dem programm, eine GUI, wenn ja welches toolkit, welche externen Bibilotheken nutzt du?
Edit: Hab mir das ganze mal Flüchtig angeschaut, du solltest NIEMLAS Code-Dateien direkt einbinden, sondern Funktionen in einer Header Definieren und die dann einbinden, die Funktionen deklarierst du dann in einer anderen Code-Datei, die dann mit Compiliert wird.
Du hast all deinen Code in eine/wenige Dateien geschrieben, Kapsele deine Klassen und Methoden in einzelene Dateien, die diese in Sinnvolle kleinere Häppchen unterteilen, damit du nicht so verrwirrt wirst und schneller Fehler finden und vermeiden kannst.
Mit welchem Compiler Compiliert, auf welcher Platform?
Was nutzt du in dem programm, eine GUI, wenn ja welches toolkit, welche externen Bibilotheken nutzt du?
Edit: Hab mir das ganze mal Flüchtig angeschaut, du solltest NIEMLAS Code-Dateien direkt einbinden, sondern Funktionen in einer Header Definieren und die dann einbinden, die Funktionen deklarierst du dann in einer anderen Code-Datei, die dann mit Compiliert wird.
Du hast all deinen Code in eine/wenige Dateien geschrieben, Kapsele deine Klassen und Methoden in einzelene Dateien, die diese in Sinnvolle kleinere Häppchen unterteilen, damit du nicht so verrwirrt wirst und schneller Fehler finden und vermeiden kannst.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Programm lässt sich nicht kompilieren
Also Release: Absturz des Programms, also so eine Windows Fehlermeldung in der Art des "INIMaker reagiert nicht mehr und muss beendet werden" stils. öööhm. Compiler: GCC; Platform: Windows 7 64bit, keine GUI, externe Bibliotheken hab ich nur die IC.
ja aber wenn ich die Klassen in andre Dateien auslagere, dann muss ich doch wieder Header schreiben. Wie sähe denn der Header für die Klasse spalten aus?
den Code auslagern, ... naja, is ne Sache des Geschmacks, ich werde ja denk ich an dem INIMaker bissl weiterschreiben, da werde ich das vllt. sogar machen (müssen) =)
und in wie weit ist das ein Problem, wenn ich den Code nicht über HeaderDateien einbinde?
ja aber wenn ich die Klassen in andre Dateien auslagere, dann muss ich doch wieder Header schreiben. Wie sähe denn der Header für die Klasse spalten aus?
den Code auslagern, ... naja, is ne Sache des Geschmacks, ich werde ja denk ich an dem INIMaker bissl weiterschreiben, da werde ich das vllt. sogar machen (müssen) =)
und in wie weit ist das ein Problem, wenn ich den Code nicht über HeaderDateien einbinde?
.globl truth
truth:
mov r0, #42
mov pc, lr
truth:
mov r0, #42
mov pc, lr
- Dirty Oerti
- Beiträge: 2229
- Registriert: Di Jul 08, 2008 5:05 pm
- Wohnort: Thurndorf / Würzburg
Re: Programm lässt sich nicht kompilieren
Falsch, das ist absolut keine Sache des Geschmacks. Code in Headerdateien einzubinden ist schlichtweg falsch. In Headerdateien darf nur Code stehen, wenn dieser als Inline gekennzeichnet ist.naums hat geschrieben:den Code auslagern, ... naja, is ne Sache des Geschmacks
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne!
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.
Ich helfe gerne!

----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Programm lässt sich nicht kompilieren
Nein, nur eine Sache der Ignoranz. Wäre es wirklich gleichbedeutend, dann würden mindestens die Hälfte aller Projekte so Compiliert werden, werden sie aber nicht. Hinter Prinzipien wie Header und Objekt-Dateien stehen Jahre an Erfahrung. Es wird nicht nur wegen der Optik genutzt, sondern weil sich einfach nur Verdammt viele Fehler vermeiden lassen und man sich Stunden des Fehlersuchens schenken kann.den Code auslagern, ... naja, is ne Sache des Geschmacks
Und um zurück zu deinem Problem zu kommen, du hast uns immer noch nicht mitgeteilt, welcher Fehlermeldungen du beim Compilieren als Debug bekommst.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Programm lässt sich nicht kompilieren
"It seems that this project has not been build yet. Do you want to build it?"
ich klicke auf "ja" und es kommt folgendes raus:
kommt der Fehler bei irgendwem von euch auch?
ich klicke auf "ja" und es kommt folgendes raus:
Code: Alles auswählen
Precompiling header: win\ic.hpp
mingw32-g++.exe: M:\PROJECTS\CodeBlocks\INIMaker with Linux\win\ic.hpp: linker input file unused because linking not done
Linking console executable: bin\Debug\DatabaseMaker.exe
mingw32-g++.exe: win\ic.h.gch: No such file or directory
Process terminated with status 1 (0 minutes, 0 seconds)
0 errors, 0 warnings
.globl truth
truth:
mov r0, #42
mov pc, lr
truth:
mov r0, #42
mov pc, lr
Re: Programm lässt sich nicht kompilieren
öh... okay... keiner schreibt mehr.... kein gutes Zeichen... Ihr kennt mich, ich <- Vollnoob, deshalb kann man mich trotzdem unterstützen... 

.globl truth
truth:
mov r0, #42
mov pc, lr
truth:
mov r0, #42
mov pc, lr
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Programm lässt sich nicht kompilieren
Ich habe Dein Projekt ja nicht.naums hat geschrieben:"It seems that this project has not been build yet. Do you want to build it?"
ich klicke auf "ja" und es kommt folgendes raus:kommt der Fehler bei irgendwem von euch auch?Code: Alles auswählen
Precompiling header: win\ic.hpp mingw32-g++.exe: M:\PROJECTS\CodeBlocks\INIMaker with Linux\win\ic.hpp: linker input file unused because linking not done Linking console executable: bin\Debug\DatabaseMaker.exe mingw32-g++.exe: win\ic.h.gch: No such file or directory Process terminated with status 1 (0 minutes, 0 seconds) 0 errors, 0 warnings
Ich vermute, dass hier der Compiler durcheinander kommt. Du hast eine ic.hpp (HPP!), er versucht eine vorkompilierte Headerdatei damit zu erstellen und sucht dann eine ic.h.gch (H!).
hpp ist eine eher ungewöhnliche Abkürzung, Ich würde entweder .h als Erweiterung verwenden oder in den Einstellungen die Voreinstellung 'Vorkompilierte Header' abschalten.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- Bebu
- Beiträge: 562
- Registriert: Mi Okt 21, 2009 6:19 pm
- Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!
Re: Programm lässt sich nicht kompilieren
Wundert dich das irgendwie? Du legst uns hier einen ziemlichen Haufen Code vor die Tür, der kaum dokumentiert ist ohne Erklärung, was das Ding eigentlich genau tun soll, pflegst einen Programmierstil, der mit unübersichtlich schmeichelvoll umschrieben ist und zeigst keine Lust was daran zu ändern.
Also ich hab mir das ganze runtergeladen und konnte es unter Linux nicht mal kompilieren, weil 50 Fehler. Muss ich da irgendwo einen Schalter für Linux setzen? Wenn ja, wo? Warum steht das nicht als Kommentar im Text?
Also ich hab mir das ganze runtergeladen und konnte es unter Linux nicht mal kompilieren, weil 50 Fehler. Muss ich da irgendwo einen Schalter für Linux setzen? Wenn ja, wo? Warum steht das nicht als Kommentar im Text?
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!
Re: Programm lässt sich nicht kompilieren
öhm... Das mit Linux ist relativ klar... (hätte ich vllt. sagen können *g*) weil die IC (Improved Console) die WindowsAPI benutzt... (und die gesamten schreib und les Befehle gehen auch nur unter Windows (WritePrivateProfileString)) An der Linux kompatiblität werde ich für die Version nix mehr unternehmen... bin grade dabei das programm mit QT-GUI neu zu schreiben.
Ich bin eigentlich sehr bemüht Code so einfach wie möglich zu halten. manchmal gelingt mir das, manchmal aber auch net. Die Variablen sind zumindest relativ sinnvoll benannt, auch wenn nicht immer sinnvoll. ziemlich alle Variablen a,b,c,.... sind irgendwelche Counter, die zählen wie oft irgendeine Schleife schon durchgelaufen ist.
Wenig dokumentiert.... jaaaaah, sorry... das hab ich vergessen ^^. Ich schreib erst den Quellcode und dann eigentlich die Kommentare... außer ich vergesse die Kommentare...
@xin: kann man denn eine .hpp so einfach in eine .h umbenennen, oder muss ich da irgendwas andres beachten?
Ich bin eigentlich sehr bemüht Code so einfach wie möglich zu halten. manchmal gelingt mir das, manchmal aber auch net. Die Variablen sind zumindest relativ sinnvoll benannt, auch wenn nicht immer sinnvoll. ziemlich alle Variablen a,b,c,.... sind irgendwelche Counter, die zählen wie oft irgendeine Schleife schon durchgelaufen ist.
Wenig dokumentiert.... jaaaaah, sorry... das hab ich vergessen ^^. Ich schreib erst den Quellcode und dann eigentlich die Kommentare... außer ich vergesse die Kommentare...
@xin: kann man denn eine .hpp so einfach in eine .h umbenennen, oder muss ich da irgendwas andres beachten?
.globl truth
truth:
mov r0, #42
mov pc, lr
truth:
mov r0, #42
mov pc, lr