2010-08-07 8 views
7

Estoy intentando hacer funcionar MinGW y MSYS para poder construir iconv y libxml2 en Windows, pero estoy encontrando que ./configure y make están dando un montón de BSD/Unix relacionados errores que no son lo suficientemente específicos para google, y no son lo suficientemente descriptivos como para que lo pueda descifrar. ¿Alguien puede realizar algunos de los pasos necesarios para obtener iconv y libxml2 .dll/.lib en una máquina Win32?Creando los últimos binarios de iconv y libxml2 en Win32

Estoy actualizando las bibliotecas para algún software y me puse a jugar con esto todo el día de hoy y no lo he descubierto. Obtuve el libpng, zlib y curl más recientes sin problemas, pero veo que no hay mucho soporte o instrucciones para estas bibliotecas como las hubo para los demás. Cualquier ayuda sería muy apreciada, gracias de antemano por su tiempo.

James

Respuesta

2

libxml2 proporciona la configuración de JavaScript. Búscalo en la carpeta win32. También hay un archivo Léame separado allí. Ejemplo de la construcción libxml2:

cd win32 
cscript.exe configure.js compiler=mingw prefix=D:\soft\Qt\2010.03\mingw debug=yes static=yes 
mingw32-make -f Makefile.mingw 

he downloaded prebuilt iconv y funciona para mí.

+0

Basilevs, Gracias, esto hizo el trabajo para libxml2, pero en cuanto a iconv quería obtener la última 1,13. 1 y compila ese, pero no fue capaz de encontrarlos en ningún lado. Traté de usar los que están disponibles en Sourceforge con MinGW (http://sourceforge.net/downloads/mingw/MinGW/libiconv/libiconv-1.13.1/) pero no pude hacer que funcionaran sin hacer algo de hacky para cambiar el Convenciones de nomenclatura de iconv.dll. –

+0

Siempre uso la biblioteca estática para iconv. ¿Lo has probado? – Basilevs

+0

Tuve que hacer esto y eventualmente lo hice funcionar. Sin embargo, asegúrese de usar mingw32-make y no make. Por alguna razón, los dos se comportaron de manera diferente para mí. Podría haber tenido un problema de ruta, pero está funcionando ahora, así que lo dejaré. –

1

puede obtener los binarios para ventanas hechas por Igor Zlatkovic en http://www.zlatkovic.com/libxml.en.html

+0

Aaragorn, vi esos binarios, pero son más antiguos que los que tengo actualmente, solo tiene 1.9.2, esperaba una versión más nueva. Entiendo que puede funcionar bien con una versión anterior del .dll, pero estaba tratando de evitar la dependencia de confiar en .dlls preconstruidos y tratar de construir el mío propio. He aceptado el compromiso y usaré una versión anterior, aunque me gustaría descubrir cómo crear iconv en win32. Cygwin y MinGW/MSYS me fallaron incluso después de muchos intentos y soluciones. –

3

Soy consciente de que puedo estar reviviendo un hilo muerto, pero ...

Algo que trabajó para mí era no compilar el bibliotecas compartidas, en lugar derivar de ellos con la función a2dll de la siguiente manera:

./configure --prefix=/mingw --disable-shared make make install

a2dll libiconv.a -o iconv.dll mv -iv iconv.dll /mingw/bin/

0

que hay que hacer a continuación, limpia primero

./configure --host=arm-linux --disable-shared --enable-static CC="arm-linux-gcc" --prefix="/tmp/iconv" --with-configuredir="/tmp/iconv" 
make 
make install 

luego en el directorio/tmp/iconv obtener el libconv.a

+2

Win32, no Linux – Alex

0

he encontrado recientemente un tutorial de Andrew Marlow (julio de 2013), que explica brevemente cómo compilar libxml2 bajo VisualStudio.

El libiconv se puede compilar siguiendo este complete tutorial, también dado como enlace en el primer enlace.

EDITAR

La versión 1.14 de libxml2 tiene ahora una solución VS2010. ¡Ahora es muy simple hacer esto!

De lo contrario, puede seguir el archivo Léame y el tutorial de Marlow para hacer el mismo trabajo con otros compiladores específicos de Windows.

EDITAR

quiero escribir aquí algunos detalles acerca de la solución de VS2010 incluye con v1.14 libxml2, para ayudar a cualquier persona interesada. Está bastante mal hecho; por ejemplo, la configuración de Liberación no se ha realizado del todo, tienes que hacerlo. Si desea usarlo, le doy dos consejos:

  1. Borre primero el icono del proyectov si la ruta no es correcta. A continuación, agregue su archivo de proyecto; todavía tendrá una advertencia en la compilación, debido a una referencia guardada en el archivo anterior. Para suprimir esta advertencia, edite el.vcxproj con un editor de texto, cambie la ruta ProjectReference Include del último Grupo de artículos con la ruta correcta, Y también el elemento Project de este nodo (reemplácelo con el ProjectGuid del icono vcxproj).

  2. Enlace con Ws2_32.lib cualquier aplicación que use la biblioteca estática libxml2.lib.

Estos son algunos errores que he pasado, espero que esto ayude a cualquiera que quiera reconstruir libxml2 bajo VS.

2

Medio Ambiente mingw32

yo era capaz de compilar libxml2 con la ayuda de este post
https://mail.gnome.org/archives/xml/2011-December/msg00005.html
Dentro del directorio win32 del descomprimido http://xmlsoft.org/sources/libxml2-2.9.1.tar.gz
realizar 2 pasos de la siguiente manera

cscript configure.js threads:no static:yes compiler:mingw iconv:no prefix=where_you_want_to_install include=where_your_mingw_include_is lib=where_your_mingw_lib_is debug=yes 

y luego
mingw32-make -f Makefile.mingw


que era capaz de compilar y ejecutar http://xmlsoft.org/examples/reader1.c ejemplo usando Code :: Blocks en MinGW con Windows 7 el medio ambiente.
recuerde especificar -lxml2 y -lws2_32 banderas en la casilla "Otras opciones de vinculador" en "Proyecto opciones de compilación"