Aktuelle Zeit: 22.12.2024, 14:07

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 18.01.2008, 14:46 
Offline
Benutzeravatar

Registriert: 17.04.2007, 08:42
Beiträge: 460
Wohnort: Willich, NRW
hi leute,

hab folgendes problem. ich habe soweit eine demo programmiert, die ich nun zum testen an ein paar leute weitergeben wolte. diese besitzen keine entwicklungsumgebung/compiler etc, geschweige denn von dem irrlichSDK. also habe ich die irrlicht-dlls und irrklang-dlls mit geschickt. soweit so gut. aber nun konnte das programm nicht geöffnet werden =/. folgender screenshot wurde aufgenommen.

bei einem freund mit dem selben compiler klappts. also vermute ich dass ich noch n paar datein mehr mitschicken muss. welche könntn das denn sein!? danke für die hilfe.

mfg heck


Dateianhänge:
Clipboard01.jpg [65.55 KiB]
1265-mal heruntergeladen

_________________
Bild

Irrlicht - From Noob To Pro A Guideline

--

Sonstige Projekte, Blog : http://www.rpdev.net
Nach oben
 Profil  
 
BeitragVerfasst: 18.01.2008, 15:14 
Offline
Newsposter
Benutzeravatar

Registriert: 12.03.2007, 10:42
Beiträge: 338
Wohnort: Berlin
3. Möglichkeit
Man linkt die CRT Datein statisch zu seiner exe dazu. Dazu "Project -> Project Properties -> Configuration Properties -> C/C++ -> Code Generation -> Runtime Library von "Multi-Threaded DLL" in "Multi-Threaded" ändern. Das hat den Nachteil, dass man die CRT Datein später nicht manuell updaten kann und bei vielen selbsterstellten Dlls braucht man unnötig viel Speicher, da alle Dlls die CRT statisch linken...

4. Möglichkeit
Man führt auf dem Zielrechner die vcredist_x86.exe aus. Hier findet ihr sie:
"...\Microsoft Visual Studio 8\SDK\v2.0\Bootstrapper\Packages\vcredist_x86 (oder x64, je nach Maschine)"
wegen der redist einfach mal googeln oder bei M$ gucken gehen

http://www.spieleprogrammierer.de/phpBB2/viewtopic.php?t=4926


Nach oben
 Profil  
 
BeitragVerfasst: 21.01.2008, 15:04 
Offline
Benutzeravatar

Registriert: 17.04.2007, 08:42
Beiträge: 460
Wohnort: Willich, NRW
hab beides versucht. ersteres lies mich völlig verzweifeln, da nach dem erneuten kompilationsversuch folgendes fehlermeldungen erscheinen.

Code:

LINK : warning LNK4098: Standardbibliothek "LIBCMT" steht in Konflikt mit anderen Bibliotheken; /NODEFAULTLIB:Bibliothek verwenden.
libcpmtd.lib(xmbtowc.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
tile_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
time_event_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
gui_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
libcpmtd.lib(stdthrow.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
exception_handler.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
sound_device.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__CrtDbgReportW" in Funktion ""public: __thiscall std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >(class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > const &)" (??0?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAE@ABV01@@Z)".
sprite.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
sprite_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
animation.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
animation_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
chara_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
character.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__CrtDbgReportW".
libcpmtd.lib(xdebug.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__malloc_dbg" in Funktion ""void * __cdecl operator new(unsigned int,struct std::_DebugHeapTag_t const &,char *,int)" (??2@YAPAXIABU_DebugHeapTag_t@std@@PADH@Z)".
libcpmtd.lib(xmbtowc.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__malloc_dbg".
libcpmtd.lib(xdebug.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__free_dbg" in Funktion ""void __cdecl operator delete(void *,struct std::_DebugHeapTag_t const &,char *,int)" (??3@YAXPAXABU_DebugHeapTag_t@std@@PADH@Z)".
libcpmtd.lib(xmbtowc.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__free_dbg".
libcpmtd.lib(_tolower.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__calloc_dbg" in Funktion "__Getctype".
C:\Dokumente und Einstellungen\Stefan\Desktop\DATABASE\PROGRAMMIERUNG\projekte\projekt L\Debug\projekt L.exe : fatal error LNK1120: 4 nicht aufgelöste externe Verweise.



19 wunderschöne fehler mit deren behebung ich mich sehr schwer tue. der spass daran ist ja, dass ich nicht von "Multi-Threaded DLL" donern von "Multi-Threaded-Debug DLL" auf "Multi-Threaded" umgestellt habe. weil das so standart vorgabe war("Multi-Threaded Debug DLL". vllt hängts damit zusammen?

_________________
Bild

Irrlicht - From Noob To Pro A Guideline

--

Sonstige Projekte, Blog : http://www.rpdev.net


Nach oben
 Profil  
 
BeitragVerfasst: 21.01.2008, 15:28 
Offline
Newsposter
Benutzeravatar

Registriert: 12.03.2007, 10:42
Beiträge: 338
Wohnort: Berlin
man sieht deutlich das du die debug dll gegen die statische release getausch hast.
du musst ja auf das mit dem debug usw. achten:
für debug: multithreaded debug dll -> multithreaded debug
für release: multithreaded dll -> multithreaded

ansonnsten ist die einfachste möglichkeit immernoch die redistributables mitliefern so wie es in der 4. möglichkeit steht


Nach oben
 Profil  
 
BeitragVerfasst: 21.01.2008, 16:03 
Offline
Benutzeravatar

Registriert: 17.04.2007, 08:42
Beiträge: 460
Wohnort: Willich, NRW
muss dich leider enttäuschen

Code:
time_event_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
gui_manager.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW" in Funktion ""protected: __thiscall std::_Vector_val<class gui_object *,class std::allocator<class gui_object *> >::_Vector_val<class gui_object *,class std::allocator<class gui_object *> >(class std::allocator<class gui_object *>)" (??0?$_Vector_val@PAVgui_object@@V?$allocator@PAVgui_object@@@std@@@std@@IAE@V?$allocator@PAVgui_object@@@1@@Z)".
sound_device.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
sprite.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
sprite_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
tile_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
animation.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
animation_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
chara_manager.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
character.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".


zwar weniger aber immer noch zu viele wenn ich es auf den richtige modus umstelle. auch version 4 klappt nicht. habs versucht bei einer freundin. hab ihr sogar extra noch mal das ding geschickt die hat das ausgeführt und dann versucht das programm zu starten. klappte nicht. leider

_________________
Bild

Irrlicht - From Noob To Pro A Guideline

--

Sonstige Projekte, Blog : http://www.rpdev.net


Nach oben
 Profil  
 
BeitragVerfasst: 21.01.2008, 16:31 
Offline
Newsposter
Benutzeravatar

Registriert: 12.03.2007, 10:42
Beiträge: 338
Wohnort: Berlin
was für ein fehler kommt denn bei methode4
aber warum das nit bei dir funzt is mir schleierhaft das mach ich bei mir meistens so.
ansonnsten hat der anderre pc denn .net2.0 drauf gehabt

und guck dir mal noch die anderren beiden möglichkeiten bei spieleprogrammierer.de an (link is oben mit im beitrag)


Nach oben
 Profil  
 
BeitragVerfasst: 22.01.2008, 23:24 
Offline
Benutzeravatar

Registriert: 17.04.2007, 08:42
Beiträge: 460
Wohnort: Willich, NRW
ich will hier ja niemanden ärgern, aber keine der 4 möglichkeiten hat funktioniert. habs auf zwei verschiedenen zielrechnern versucht. alle vier möglichkeiten, haben versagt =/ weiß auch nicht was das soll. ich verwende die express edition. weiß nicht ob es dawas zu mäkeln gibt. waurd zumindest in einem der vier fälle gesondert betrachtet. hmm noch jemand ideen?

EDIT: methode vier hat gar keione wirkung gehabt. es passierte genau das gleiche wie vorher. und das .net2.0 war nicht drauf. als wir es dann aber nachträglich draufgezogen haben hats immer noch nich geklappt. ich weiß aber nicht ob er danach rebootet hat, und ob dies erforderlich war.

_________________
Bild

Irrlicht - From Noob To Pro A Guideline

--

Sonstige Projekte, Blog : http://www.rpdev.net


Nach oben
 Profil  
 
BeitragVerfasst: 22.01.2008, 23:31 
Offline
Newsposter
Benutzeravatar

Registriert: 12.03.2007, 10:42
Beiträge: 338
Wohnort: Berlin
wenn du nix dagegen hast, könntest du mir mal deine executable schicken(rapid oder etwas derartiges und link dann per pn) vllt find ich ja die ursache warums net will


Nach oben
 Profil  
 
BeitragVerfasst: 31.01.2008, 22:18 
Offline
Benutzeravatar

Registriert: 17.04.2007, 08:42
Beiträge: 460
Wohnort: Willich, NRW
so luete das problem ist gelöst. falls jemand mal in die gleiche klemme kommen sollte.

3. Möglichkeit
Man linkt die CRT Datein statisch zu seiner exe dazu. Dazu "Project -> Project Properties -> Configuration Properties -> C/C++ -> Code Generation -> Runtime Library von "Multi-Threaded DLL" in "Multi-Threaded" ändern. Das hat den Nachteil, dass man die CRT Datein später nicht manuell updaten kann und bei vielen selbsterstellten Dlls braucht man unnötig viel Speicher, da alle Dlls die CRT statisch linken...

nicht vergessen in den konfigurationseinstellungen auf release umzustellen!!!!! ds ist ganz wichtig sonst kommen sehr viele linker fehler. diese exe dann weiterleiten und dazu mit die vcredist_x86.exe auf dem zielrechner ausführen. so einfach isses (lol)^^ wer das noch mal schritt für schritt nachvollziehen möchte. hier der beitrag in einem externen forum (ich mache das zur vollständigkeit halber, wenn dies von den moderatoren nicht gewünscht wird, bitte ich darum es kommentarlos zu löschen =), NwP = das heck)

http://www.c-plusplus.de/forum/viewtopi ... ml#1446873

an dieser stelle nochmal danke an psyco001 für seine hilfe^^

_________________
Bild

Irrlicht - From Noob To Pro A Guideline

--

Sonstige Projekte, Blog : http://www.rpdev.net


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de