Seite 1 von 1
programm mit eclipse ausführbar, ohne aber nicht??
Verfasst: 28. November 2008 17:33
von wayneos
hallo,
hab ein programm mit eclipse (Qt integrated) ein programm geschrieben welches sich in eclipse (also durch klicken auf das play-zeichen) wunderbar ausführen lässt, jedoch abstürzt wenn ich in den ordner gehen (mit windows explorer) und dirkt auf die .exe klicke!
die fehlermeldung von windows lautet wie folgt:
woran kann das liegen? muss ich das extra nochmal compilen? oder was in der .pro datei ändern?
ich bin ratlos... bitte dringend um hilfe
thx im vorraus
Verfasst: 28. November 2008 19:56
von upsala
Wahrscheinlich ein Problem mit Pointern. Die beim starten durch Eclipse nur noch nicht auffallen...
Verfasst: 28. November 2008 20:14
von MiKla
...oder die Umgebungsvariablen sind im Eclipse anders und in der nicht Eclipse Umgebung ist eine ander Version der QtCored4.dll vorhanden!
Verfasst: 29. November 2008 20:41
von wayneos
upsala hat geschrieben:Wahrscheinlich ein Problem mit Pointern. Die beim starten durch Eclipse nur noch nicht auffallen...
kannst du das mal genauer erklären wie du das meinst! ich verwende QString in dem programm ohne es explizit zu includen aber ich hab QT+= gui in der .pro datei.
...oder die Umgebungsvariablen sind im Eclipse anders und in der nicht Eclipse Umgebung ist eine ander Version der QtCored4.dll vorhanden!
ich hab den path für den bin-ordner von qt in der umgebungsvariable eingetragen. doch leider funktioniert es nach wie vor nur in eclipse
Verfasst: 29. November 2008 21:10
von upsala
Du verwendest nur QString in deinem Programm? Warum nimmst du dann überhaupt Qt?
Verfasst: 29. November 2008 23:56
von wayneos
upsala hat geschrieben:Du verwendest nur QString in deinem Programm? Warum nimmst du dann überhaupt Qt?
...ähm ich meinte das das das die einzigste "klasse" ist die ich nicht im header include! alles andere schon.
muss ich vielleicht in eclipse irgendwie das programm exporten oder so? wenn ich im verzeichnis von meinem programm nachschaue ist nur der ordner "debug" gefüllt mit einer .exe und ein haufen .o datein! der "release" ordner ist leer! aber brauch ich nicht ne release version?
Verfasst: 3. Dezember 2008 01:05
von wayneos
kann mir denn keine explizieter erklären was ursachen für dieses problem seien könnten?
ist für ne facharbeit, und langsam sollte das ding laufen damit ich drüber schreiben kann. hoffe ihr versteht das es etwas brennt bei mir.
Verfasst: 3. Dezember 2008 06:32
von Christian81
Facharbeit - da sollte man wohl auch methodisch vorgehen können. Also Bitte gib uns ein Testcase mit dem dies passiert so das wir es nachvollziehen können. Und mit Testcase meine ich nicht das komplette Programm sondern ein Minimalbeispiel!
Verfasst: 5. Dezember 2008 20:34
von wayneos
das gestalltet sich schwierig da kleine programme auch auserhalb von eclipse laufen.
nur das prog was ich geschrieben hab (welches leider ja zu groß ist um es ganz zu posten) läuft einzig und allein in eclipse! keine ahnung woran das liegt.
muss ich da speziell was beachten? ich verwende QFILE und QPROCESS, evtl muss man dabei ja was beachten!
brainstormt mich einfach ein bisschen.
Verfasst: 6. Dezember 2008 10:32
von solarix
unter "methodisch vorgehen" dachte Christian eigentlich nicht an "brainstormt mich einfach ein bisschen." ... also:
1. Verifizier, dass dein Programm 100% sicher die richtigen DLLs lädt. Der Bin-Path reicht dazu nicht, sondern verwende ein Tool, welches dir die Abhängigkeiten zeigt ("ldd" unter Linux, ich glaube unter Windoof gibts "dependency walker" oder so.. (Posting von Michael)
2. Wenn das Programm die richtigen Qt-Dlls lädt (die der aktuellen Qt-Version und die passende Release/Debug-Version) gibt's zwei Varianten. Entweder verwendest du einen Profiler, um irgendwelche schrägen Pointeroperationen zu finden ("valgrind" unter Linux, keine Ahnung unter Wind...)... (Posting von upsala), oder:
3. Falls du da kein passendes Tool findst gibt's nur eines: Erstell eine Kopie deines Projektes und reduzier es solange, bis du a) den Fehler selber finden, oder b) uns den Quellcode anhängen kannst.. (Posting von Christian).
Was genau gibt's da also noch zu "brainstormen".....?
Verfasst: 6. Dezember 2008 11:57
von MiKla
Wenn das Programm in der Umgebung von Eclipse funktioniert, dann ist es zu 99% ein Problem der Umgebung (verschiedene DLL's, Pfade nicht richtig usw.).
Aber das sagte ich ja bereits.
Man sollte die Ratschläge auch berücksichtigen, statt nach mehr zu fordern ohne selber was zu tun. Wenn Du all die Dinge überprüft hättest und das Problem immer noch bestünde, würden wir Dir sicher weiter helfen, zu mal Du dann bestimmt neu Details für uns hättest.
Michael