Seite 1 von 1

Kann kein Release erstellen, aber Debug funkioniert!

Verfasst: 13. Februar 2009 18:16
von Mr.Undercover
Hallo alle zusammen,

mal eine andere Frage... Habe eine sehr seltsame Fehlermeldung mit der ich nichts anfangen kann...Ich wollte eine exe Datei meines Projekts erstellen. Dabei wollte ich dsa dann als Release compilieren, ich erhalte aber dann die Fehlermeldung system konnte angegebene exe Datei nicht finden ?

dies sind die Fehlermeldungen des Compilers bei release:

Code: Alles auswählen

1>------ Build started: Project: Tool, Configuration: Release Win32 ------
1>Linking...
1>tool.obj : error LNK2019: unresolved external symbol "public: static struct QMetaObject const Tool::staticMetaObject" (?staticMetaObject@Tool@@2UQMetaObject@@B) referenced in function "public: static class QString __cdecl Tool::tr(char const *,char const *)" (?tr@Tool@@SA?AVQString@@PBD0@Z)
1>tool.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall Tool::metaObject(void)const " (?metaObject@Tool@@UBEPBUQMetaObject@@XZ)
1>tool.obj : error LNK2001: unresolved external symbol "public: virtual void * __thiscall Tool::qt_metacast(char const *)" (?qt_metacast@Tool@@UAEPAXPBD@Z)
1>tool.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall Tool::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@Tool@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
1>C:\Users\Emin\Documents\Visual Studio 2005\Projects\Tool\Release\Tool.exe : fatal error LNK1120: 4 unresolved externals
1>Tool - 5 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Was ich auch nicht verstehe ich kriege gar keine Fehlermeldung wenn ich das als Debug compiliere... Was mache ich nun falsch ?

Verfasst: 14. Februar 2009 12:38
von androphinx
Mein lieber MrUndercover, ich habe langsam keinen Bock mehr. Zu jeder noch so bekloppten und einfachen Frage machst du hier einen Thread auf und müllst uns zu. Sorry das sagen zu müssen, aber es ist so. Wie ich dir schon letztes mal geschrieben habe, du darfst auch mal dein eigenes Gehirn einschalten. so gern wir dir helfen, aber du solltest auch mal selber versuchen dir zu helfen. Beispielsweise bei google oder in der QT-Dok. daa findet man ruckzuck die lösung zu diesem problem.....

Mfg androphinx

Verfasst: 16. Februar 2009 08:58
von RavenIV
Ein kleiner Tip:
Fehlt da vielleicht eine Lib?
Bzw hast du nur die Debug-Lib eingebunden?

Verfasst: 16. Februar 2009 11:11
von erpheus
Hallo Mr. Undercuver,

mal eine Frage wo steht da er könne die exe nicht finden. Poste doch mal genau die Zeile wo genau das steht.

Verfasst: 16. Februar 2009 16:20
von Mr.Undercover
Hallo leute,

Mittlerweile habe ich schon gegoogelt und in anderen Foren reingeschaut! In anderen Foren steht halt drinne, dass man einfach ein Clean auf das Prog schmeissen soll, und dann sollte es funktionieren (was leider bei mir nicht der Fall war!)

@Raven: Ist die Debug lib nicht immer miteingebunden. Habe ja andere programme auch mit QT geschrieben und da war es nicht nötig gewesen sowas ? Wie mache ich das ? Außerdem was hat die Debug lib mit dem Release zu tun ?

@Erpeus:Was meinst du genau er könnte die Exe nicht finden ? bzw. Wo steht was ?

LG

Verfasst: 16. Februar 2009 16:50
von pfid
Mr.Undercover hat geschrieben:@Erpeus:Was meinst du genau er könnte die Exe nicht finden ? bzw. Wo steht was ?
Er meint das hier:
Mr.Undercover hat geschrieben:Dabei wollte ich dsa dann als Release compilieren, ich erhalte aber dann die Fehlermeldung system konnte angegebene exe Datei nicht finden ?

Hast du mal

- nmake clean
- nmake distclean
- qmake
- nmake release

Probiert?

Verfasst: 16. Februar 2009 16:53
von Mr.Undercover
ja habe ich......

Verfasst: 16. Februar 2009 16:59
von Mr.Undercover
mittlerweile habe ich ein neues Projekt auch angelegt und was drinne ist einfach rüberkopiert! Aber ich kriege andere Fehlermeldungen........ Ich könnte KOTZEN!!!!!

meine "neuen" Fehlermeldungen:

Code: Alles auswählen

1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C2039: 'EasyToolClass' : is not a member of 'Ui'
1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C2146: syntax error : missing ';' before identifier 'ui'
1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\easytool.cpp(5) : fatal error C1083: Cannot open include file: 'tool.h': No such file or directory
1>main.cpp
1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C2039: 'EasyToolClass' : is not a member of 'Ui'
1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C2146: syntax error : missing ';' before identifier 'ui'
1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\emin\documents\visual studio 2005\projects\easytool\easytool\easytool.h(22) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>Generating Code...

@Erpeus: sorry hatte mich verlesen gehabt... Es kann die Tool. Exe Datei nicht finden! Obwohl die im ordner liegt und wenn ich die Datei mal expliziet ausführen will ohne VS kriege ich diese Fehlermeldung :

C:\Users\....\Tool.exe , The NTVDM CPU has enoutered an illigal instruction.
CS:11f8 IP:0207 OP:63 65 73 73 6f Choose 'Close to terminate the application!

Verfasst: 16. Februar 2009 17:43
von erpheus

Code: Alles auswählen

1>C:\Users\Emin\Documents\Visual Studio 2005\Projects\Tool\Release\Tool.exe : fatal error LNK1120: 4 unresolved externals
Dies ist die drittletzte Zeile von der ersten Fehlermeldung die Du gepostet hast.
Da steht nirgends das er die exe nicht findet. Sondern das die Tool.exe einen Linkerror wirft. und genaueres steht ein par Zeilen drüber.

Zu deinen neuen Fehlermeldungen:
Bitte, bitte, bitte lies Dir mal die Meldungen im einzelnen durch und betrachte sie auch mal alllein Stück für Stück und renn nicht immer gleich hir ins Forum. Es wurde Dir ja schon mal gesagt, bitte schalte deinen Kopf an.

Hier mal eine Fehlermeldung aus deinem aktuellen Post:

Code: Alles auswählen

1>.\easytool.cpp(5) : fatal error C1083: Cannot open include file: 'tool.h': No such file or directory 
Was heisst das ins deutsche Übersetzt?
Antwort:

Code: Alles auswählen

1>.\easytool.cpp(5) : fataler Feheler C1083: Kann eingefügte Datei nicht öffnen 'tool.h': Keine Datei oder kein Verzeichniss
Soll ich jetzt echt noch weiter übersetzen?

Und sorry: wer mit solchen Posts hier ins Forum schneit ist entweder verdammt faul oder blöd oder will nicht.
Wenn ich freundlich bin nehm ich einfach mal an das du diese Felehrmeldungen bereits gelöst hast und nur zu faul warst diese Meldungen aus deinem Post zu nehmen.

Deine Posts erzeugen einfach den Eindruck das du Code schreibst ihn kompelierst und wenn es nicht geht sofort postest.

Daher noch einen Tip wie Du in Zukunft beim Entwickel mehr erfolg haben wirst:
1. Überleg dir was soll das Programm können.
2. Welche Funktionen soll der Anwender nutzen können
3. In welche Module kann ich das gestellte Problem zerlegen
4. Welche Klasssen benötige ich
5. Welche Objekte benötige
6. Welche abläufe gibt es
7. das alles auf papier planen
8. Dokus lesen
9. jetzt erst wird programmiert
10. fehler?
11. fehler analysieren
12. fehlerquellen suchen
13. doku lesen
14. googeln
15. programmiren
16. jetze darfst du posten unter angabe der fehlerneldung vermuteter fehlerquelle bereits versuchter lösungsansätze.

so und dann das ganze bitte rekursiv bei jedem schritt nach punkt 1

An den FHs oder Unis wird Projektplanung gelehrt. Ein absolut ödes langweiliges Fach. Aber das Handwerkszeug von da ist einfach nötig. Wer einfach drauf los programmiert und bei fehlern den Kopf abschaltet wird verlieren und dann in Foren wie diesen nur Frust ernten. Genau das geschieht mit dir gerade.

Mein Entschluss dazu:
Wenn Du dich da nicht besserst werd ich auf deine posts nicht mehr antworten mich nervt es einfach.