From: Christian S. <sti...@tu...> - 2004-02-04 17:35:59
|
Moin, nun hab ich inzwischen auch die Mimolib von Simthetic dazu =FCberredet,=20 da=DF sie eine DLL baut. Kompliment, Martin: In Lapack++ hattest du ja=20 schon alles vorbereitet, und das Patch f=FCr Lapack.tgz lief auch auf=20 Anhieb durch! Toll! Die lapackpp32.dll lie=DF sich also prima bauen, und alle Tests mit "make= =20 check" liefen auch durch. Diese DLL ist also in Ordnung. Also hab ich analog zu dem existierenden code nun auch Mimolib mit=20 Regeln f=FCrs DLL-Bauen versehen. Und siehe da, am Ende kommt auch eine=20 DLL zusammen und der Linker beschwert sich gar nicht. Aber oh weh, wenn=20 ich nun eine Simthetic-Simulation laufen lassen will, kommt gar nichts=20 sch=F6nes, sondern nur ein "error loading DLL ...: 998" (unten auch mit=20 stacktrace). Ich habe soeben das file "mimolib/src/test/windowslink.par" eingecheckt,=20 da=DF im Unterschied zu den sonstigen parameter files aus mimolib=20 tats=E4chlich nur Bl=F6cke aus mimolib hat und keine aus simtheticlib. Da= s=20 erwartete Verhalten ist, da=DF "simthetic windowslink.par" etwas von=20 "wrong connection type" faselt, nachdem die Devices da drin n=E4mlich=20 erzeugt wurden. Aber es l=E4=DFt sich weiterhin nicht einmal laden, obwoh= l=20 die Pfadangabe absolut total korrekt ist. Auch die \ und / durcheinander=20 geben kein Problem -- ich hab's mit simthetic.dll und dem debugger=20 getestet, da=DF mit der gleichen (gemischten) Pfadangame simthetic.dll=20 korrekt geladen wird. Kann sowas von irgendwelchen Kollisionen in ressource.rc kommen, die=20 n=E4mlich evtl. bei simthetic.dll und mimo.dll teilweise identisch ist?=20 Oder hab ich was anderes vergessen...? Alle sonstigen libraries, die=20 hier ben=F6tigt werden (lapackpp32.dll, simtheticbase32.dll) sind in=20 meinem Windows-System-Ordner (hier: C:\WINNT\system32). Gru=DF Christian (Das ist zwar alles nicht eilig, aber es w=E4re halt sehr sehr toll, wenn= =20 wir Simthetic inklusive Mimolib auch f=FCr Windows anbieten k=F6nnen...) $ simthetic windowslink.par Initialize system... Total number of devices: 2 Gwenhywfar initialized. Error loading DLL "c:\temp\simth-win\modules/mimo.dll": 998 An error occured: Could not load library mimo Program was aborted! Gwenhywfar deinitialized. $ gdb simthetic GNU gdb 5.2.1 Copyright 2002 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you = are welcome to change it and/or distribute copies of it under certain=20 conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for detail= s. This GDB was configured as "i686-pc-mingw32"... (gdb) run -g windowslink.par Starting program: C:\msys\1.0\local\bin/simthetic.exe -g windowslink.par Program received signal SIGSEGV, Segmentation fault. 0x00599610 in ?? () (gdb) bt #0 0x00599610 in ?? () #1 0x77886215 in ?? () #2 0x77886f17 in ?? () #3 0x77894a47 in ?? () #4 0x77883278 in ?? () #5 0x77e9015d in simtheticbase32_dll_iname () #6 0x6b2d4122 in GWEN_LibLoader_LoadLibrary (h=3D0x3f8038, name=3D0x3fc008 "c:\\temp\\simth-win\\modules/mimo.dll") at=20 libloader.c:106 #7 0x6b2d4577 in GWEN_LibLoader_OpenLibraryWithPath (h=3D0x3f8038, path=3D0x3f61d4 "c:\\temp\\simth-win\\modules", name=3D0x3f656c "mim= o") at libloader.c:209 #8 0x6a5c3824 in simth::StreamDrivenSystem::loadLibrary(std::string=20 const&, std::string const&) const (this=3D0x3f7dc0, path=3D@0x3f7ac0,=20 filename=3D@0x3f7ac8) at streamdrivensystem.cpp:442 [...] |