How to build gnu `libiconv` an & für windows?
Ich bauen wollen, eine statische Bibliothek (*.LIB-Datei) GNU libiconv auf windows verwendet werden, mit anderen Bibliotheken in Visual C++. Andere Bibliotheken, die ich verwende sind gebaut mit "MultiThreaded DLL" (/MD) - Laufzeit-option. Also, ich brauche zu bauen libiconv mit der gleichen option.
Problem ist die libiconv
verwendet GNU-build-system, und ich möchte zu kompilieren mit /MD /MD-option. Sehen Sie die source-Struktur von libiconv hier:
http://cvs.savannah.gnu.org/viewvc/libiconv/?root=libiconv
Herr Zlatkovic verwaltet den windows-port von GNU libiconv
für libxml2
können Sie hier ansehen:
ftp://xmlsoft.org/libxml2/win32/iconv-1.9.2.win32.zip
Ich nicht verwenden können, seine port. Ich brauchen, um zu bauen von der neuesten version von libiconv-1.13. Ich Frage mich, wie dieser Kerl hat, portiert? Kann jemand bitte sagen Sie mir, wie zu bauen *.lib aus diesem und kompiliert mit MSVC?
EDIT:
Eigentlich muss ich bauen, einige weitere gnu-Bibliotheken mit den gleichen Einstellungen. Also, wenn ich eine Lösung für eine Bibliothek. Ich kann das gleiche für alle anderen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich PARK Youngho ist die How to Build libiconv mit Microsoft Visual Studio über bei Die Code-Projekt vollständig und sauber (für VS2010 und GNU libiconv 1.14).
Einen kleinen Zusatz zu Ihrer Antwort.
Ich hatte das gleiche Problem und festgestellt, dass der MinGW + MSYS Lösung war perfekt.
Obwohl, ich brauchte, um zu gehen ein wenig weiter und generieren auch die .lib-Datei, um der Lage sein, um die Verknüpfung mit der erzeugten dll.
Dies ist, was ich gefunden habe:
generieren .def-Datei aus der dll mit dumpbin (ein Visual Studio-tool).
generieren .lib-Datei aus dem .def mit der lib-Programm (Visual Studio tool auch)
Hiermit können Sie angeben, einige link-flags gegebenenfalls.
Alles detailliert hier (ich bin nicht der Autor dieser Methode):
http://wiki.videolan.org/GenerateLibFromDll
Ich erkannte auch, dass diese lib/dll-paar verknüpft werden kann mit den beiden MD-MDd-Bibliotheken.
Hoffe, die Menschen helfen kann, dass dieses post zu finden, wie es mir geholfen.
-David
kompilieren Sie Sie mit MinGW mit Msys für die Umwelt, wenn nötig. MinGW ist .die Dateien sind offenbar, nach der mailing-Liste, das gleiche format wie .lib-Dateien (tun Sie einfach umbenennen). Sie möchten vielleicht zuerst zu überprüfen, um zu sehen, ob die "iconv" - statischen Bibliothek enthalten ist, bereits in der MinGW herunterladen /Dateisystem.
Edit: es ist in msys (C:\msys\1.0\lib), zusammen mit:
und zusätzlich
Edit: ist es hier, die libiconv, die Sie benötigen? diese Versionen scheinen MSVC makefiles 🙂 http://www.opensource.apple.com/source/libiconv/
./configure
was ist ein shell-Skript aus? Mehr über, wie würde ich dafür geben, "MultiThreaded-DLL" Runtime-option g++ - compiler von MinGW../configure
ausführen zu erstellen makefile? Auch kann ich nicht verwenden, vorkompilierte lib-Datei für libiconv, weil, Wenn diese selbst kompilieren. Ich verwende die gleiche Methode, die zum kompilieren andere erforderliche gnu-Bibliotheken.Ich bin der OP. MSYS ist die genaue Sache was ich suchte.
Einfach zu installieren MinGW & MSYS enthält shell
sh.exe
&make.exe
mit denen Sie konfigurieren können, und generieren Sie eineMakefile
nach, die Sie verwenden können make.exe um es auszuführen.So einfach ist das.