Ich versuche, meine Software mit cygwin-x86 (32-Bit-Version) unter Windows-7 zu erstellen.
Cygwin-x64 (64 Bit) funktioniert auf derselben Maschine einwandfrei. Ich möchte eine ausführbare 32-Bit-Datei erstellen.
Immer wenn ich cygwin-x86 versuche, erhalte ich folgende Fehler:
[main] 7780 child_info_fork :: abort machen: C:\cygwin\bin\cygiconv-2.dll: An anderer Adresse geladen: Elternteil (0x440000)! = Kind (0x5F0000)
Make:Gabel: Ressource vorübergehendnicht verfügbar
Ich habe diesen Thread überprüft Cygwin Error
Ich habe bereits alles ausprobiert, aber ich habe immer noch das gleiche Problem.
Wann immer ich / usr/bin/rebaseall -voder cd/usr/bin && ./rebaseall -v versuche, wie in Schritt 7 der akzeptierten Antwort im oben genannten Thread erwähnt Ich bekomme diesen Fehler:
/usr/x86_64-pc-cygwin/sys-root/usr/bin/cygvtv_stubs-0.dll: übersprungen weil falscher Maschinentyp . /usr/x86_64-pc-cygwin/sys-root/usr/bin/cygz.dll: übersprungen, weil falsch Maschinentyp.
Segmentierungsfehler (Core-Dump)
Ich erhalte diesen falschen Maschinentypfehler auch für viele andere .dll-Dateien.
Wie bereits erwähnt, habe ich Cygwin-64 auf meiner Maschine installiert und funktioniert wie erwartet. Beim Ausführen von rebaseall sucht es jedoch irgendwie nach x86-64-pc-cygwin anstelle der 32-Bit-Version.
Der Thread ist veraltet.
führen Sie /usr/bin/rebase-trigger
aus, schließen Sie alle cygwin-Prozesse und führen Sie den Vorgang erneut aus setup-x86.exe
. Auch ohne dass irgendetwas installiert wird, wird eine Rebase für Sie ausgeführt.
Sie können auch die Option full angeben.
Zusätzliche Anmerkung: Die wahrscheinlichste Ursache für Fork-Probleme auf 32-Bit-Systemen sind zu viele installierte Programme und Bibliotheken.
zum Beispiel: /usr/x86_64-pc-cygwin/sys-root/usr/bin/cygz.dll
gehört zu cygwin64-zlib
, einer Cross Library zum Erstellen von cygwin64-Programmen aus cygwin32. Brauchen Sie es wirklich? Wenn nicht, entfernen Sie, wie ich vermute, alle cywgin64-Pakete.
Das Problem kann auch durch ein Antivirenprogramm ausgelöst werden. (Ich habe gesehen, dass dies mit Avast geschieht.) Sie können testen, ob dies die Ursache ist, indem Sie sie deaktivieren.
Sie können auch den jeweils letzten Prozess von ash, dash oder bash beenden, der gegabelt wurde. Setup.exe wird dieses Skript einfach überspringen und mit dem Rest fortfahren. __ Ich musste etwa 10-20 von ihnen töten, meistens in Latex Postinstall-Skripte.