Zwei Versionen von cygwin1.dll
Von: Markus Gessner (nospam@nospam.com) [Profil]
Datum: 20.11.2008 10:44
Message-ID: <uer65691f5.fsf@pino.hiskp.uni-bonn.de>
Newsgroup: de.alt.comp.cygwin+co
Datum: 20.11.2008 10:44
Message-ID: <uer65691f5.fsf@pino.hiskp.uni-bonn.de>
Newsgroup: de.alt.comp.cygwin+co
Liebe Nutzer dieser Gruppe, ich bin Windows-Laie und habe bis jetzt immer mit Linux/Unix gearbeitet, deshalb bitte ich, eventuelle Begriffsverwirrung zu entschuldigen. Ich muß jetzt unter Windows arbeiten und habe dabei folgendes Problem: Um meine tägliche Arbeit zu erleichtern, habe ich cygwin installiert, unter dem Verzeichnis c:\cygwin, und nutze es intensiv (könnte mir nicht vorstellen, ohne es produktiv zu arbeiten). Nun ist es so, daß für das Arbeiten hier folgendes unumgänglich ist: * ein Netzlaufwerk wird gemountet * dort liegen in einem Unterverzeichnis einige Programme von cygwin in einer alten Version (awk, perl, etc.) Im selben Verzeichnis wie die Programme liegt die cygwin1.dll in der für diese Programme notwendigen Version * diese Programme werden von dem Batch-Skript, das die Arbeitsumgebung einrichtet, aufgerufen (das Skript kann/darf nicht editiert werden) Nun versuchen diese Programme offensichtlich, wenn ich mein eigenes cygwin installiert habe, die neue cygwin1.dll unter c:\cygwin\bin zu laden, was zu einer Fehlermeldung führt der Art "[...] This problem is probably due to using incompatible version of the cygwin DLL [...]. Search for cygwin1.dll using the Windows Start->Find/Search facility and delete all but the most recent Start->version. [...]" Unter http://msdn.microsoft.com/en-us/library/ms682586(VS.85).aspx steht, daß immer zuerst das Verzeichnis, in dem die Anwendung steht, durchsucht wird, aber das scheint nicht nicht der Fall zu sein. Außerdem werden DLLs offensichtlich bei der ersten Verwendung in den Speicher geladen und dann immer zuerst dort gesucht. Wie erreiche ich, daß der Suchpfad für DLLs abhängig von der Umgebung gesetzt wird, so, wie es unter Linux einfach mit der Umgebungsvariablen LD_LIBRARY_PATH möglich ist, ohne etwas neu zu kompilieren? Alle Lösungen, die ich im Netz gefunden habe, laufen darauf hinaus, nur eine DLL zu haben, die dann mit etwas Glück für die alte und die neue Version der Programme funktioniert, aber das ist keine gute Lösung. Vielen Dank für Ratschläge! Markus[ Auf dieses Posting antworten ]
Antworten
- przyjaciel (20.11.2008 10:49)
- P.J.Meisch (20.11.2008 11:41)
