/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

No tener que distribuir los archivos dll

 
      Índice del Foro elrincondelc.com -> C/C++ en General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
MatZ



Registrado: 23 Sep 2004
Mensajes: 82
Ubicación: Valencia

MensajePublicado: 15/10/2007 2:15 pm
Título: No tener que distribuir los archivos dll

Hola a todos, tengo una duda y me gustaría que me ayudarais a solucionarla. El caso es que estoy desarrollando una aplicación en C++ y utilizo la librería libxml para manipular archivos xml. Actualmente, para que se ejecute la aplicación tengo que incluir el archivo libxml2.dll en el mismo directorio que el .exe
Utilizo el Visual Studio 2005 y me gustaría saber si hay alguna forma de no tener que incluir el archivo dll y de esta forma a la hora de distribuirla simplemente tener el archivo exe. Muchas gracias.
Volver arriba
Killrazor



Registrado: 24 Ene 2006
Mensajes: 1179
Ubicación: Barcelona

MensajePublicado: 15/10/2007 11:26 pm
Título:

La idea es conseguir el archivo .lib y compilarla dentro del ejecutable. Para ello deberias conseguir la libreria estatica, es decir, los creadores de la libreria ya deberian haberlo pensado y hecho asi. Si no, la forma alternativa seria usar directamente los fuente de la libreria y meterlos dentro de tu aplicacion y compilarlos, pero esto puede ser mas complicado.

Un detalle importante. Si el proyecto es lgpl puedes tener algun problema de licencia al distribuir tu programa de esa manera a menos que explicitamente avises de que estas haciendo uso de esta libreria. Si uincluyes la libreria no tienes este problema
_________________
I wanna heal i wanna feel like I'm close to something real.
I wanna find something I've wanted all along
somewhere i belong
Volver arriba
MatZ



Registrado: 23 Sep 2004
Mensajes: 82
Ubicación: Valencia

MensajePublicado: 16/10/2007 6:44 am
Título:

Muchas gracias por tu respues Killrazor, pero no consigo solucionarlo. Yo tengo el archivo libxml2.lib y en el visual studio en la parte del vinculador, en dependencias adicionales la añado pero aun así cuando ejecuto el programa me pide el archivo dll. Al ponerle el archivo .lib en el vinculador ¿no tendria que dejarme ejecutar el programa sin dar error por la dll?
Volver arriba
Karman



Registrado: 15 Oct 2005
Mensajes: 308

MensajePublicado: 16/10/2007 7:49 am
Título:

El archivo lib no determina si el enlace es estático o dinámico, especifica como es el tipo de enlace pudiendo contener en su interior el nombre de la DLL (dinámico) o el fichero Objeto (Estático), un ejemplo de esto son las librerías .lib del sistema, las cuales no contienen los códigos de las funciones sino la DLL que las contiene...

S2
_________________
www.inexinferis.co.nr

-. Karman .-
Volver arriba
Killrazor



Registrado: 24 Ene 2006
Mensajes: 1179
Ubicación: Barcelona

MensajePublicado: 17/10/2007 3:17 am
Título:

A ver, he ido a la pagina http://www.zlatkovic.com/libxml.en.html que es desde donde te puedes bajar los binarios (dlls) para windows. Si lees las notas, existe la siguiente explicacion:
Cita:

If you link to libxml statically, make sure that @lib@_STATIC macro is defined during the compilation of your sources, where @lib@ stands for LIBXML, LIBXSLT, LIBEXSLT and XMLSEC respectively.


Lo que me lleva a pensar que no existen librerias estaticas, por que basicamente lo que explica es que para hacer una compilacion de librerias estaticas te lo tienes que hacer desde el codigo fuente tu mismo.

Como dice Karman, no depende de lo que quieres hacer sino de como te lo dan hecho. Por poner un ejemplo, un desarrollador te puede dar los fuentes para que te lo compiles tu mismo, te puede dar binarios compilados dinamicos(dll + .lib dinamica) o te puede dar binarios estaticos(.lib estatica).

Lo que has descargado son los binarios dinamicos, asi que mucho me temo que para incrustarlo en tu codigo deberias compilarlo tu mismo.
_________________
I wanna heal i wanna feel like I'm close to something real.
I wanna find something I've wanted all along
somewhere i belong
Volver arriba
MatZ



Registrado: 23 Sep 2004
Mensajes: 82
Ubicación: Valencia

MensajePublicado: 17/10/2007 4:58 am
Título:

Muchas gracias a los dos, ahora si que lo he entendido bien. Pues nada finalmente distribuiré las dll junto a mi aplicación. De nuevo gracias a los dos.
Volver arriba
      Índice del Foro elrincondelc.com -> C/C++ en General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com