FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Delphi vs Lazarus
Hola sigo preguntando, tuve la curiosidad de compilar un proyecto en delphi 2010 y otro en lazarus 0.9.30.2, los cuales solo tienen un formulario vacio, sin embargo existe una diferencia enorme en el tamño del ejecutable
Delphi 817 KB Lazarus 18 MB Saben por qué? Gracias. |
#2
|
||||
|
||||
Es la pregunta del millón que todos nos hicimos alguna vez.
http://wiki.lazarus.freepascal.org/L...ries_so_big.3F http://wiki.lazarus.freepascal.org/Size_Matters
__________________
Lazarus Codetyphon : Desarrollo de aplicaciones Object Pascal, libre y multiplataforma. Última edición por rretamar fecha: 28-03-2012 a las 20:18:35. |
#3
|
||||
|
||||
Hola.
El tamaño del ejecutable en Delphi se reduce drásticamente al quitar la inclusión de packages. Valores obtenidos con Delphi 7: Código:
Project1.exe (con runtime packages) 369.152 bytes Project1.exe (sin runtime packages) 16.896 bytes No soy conocedor de Lazarus y estoy interesado en comenzar a utilizarlo. Así que buscando más sobre el tema del tamaño de los ejecutables, me llamó la atención estos enlaces en los que dicen sucederle lo contrario:además se abordaron otros temas que desconocía y me resultaron interesantes. Saludos. Edito: Cometí un error donde dije "sucederle lo contrario", quise decir "sucederle lo mismo", no sé en que tengo la cabeza...
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 28-03-2012 a las 22:29:50. Razón: Aclaración |
#4
|
|||
|
|||
Negativo, está con sus paquetes, esa opción ya la conozco, por eso te decía de la diferencia, sino no estarían en igualdad de condiciones, espero que en un proyecto mas complicado la diferencia no sea tan grande.
Y gracias |
#5
|
||||
|
||||
La razón del tamaño del ejecutable es que Lazarus carga por defecto una cantidad de información para la compilación, una vez realizado tu programa y queriendo distribuirlo, generas un ejecutable quitando esas opciones y listo, queda pesando casi lo mismo que el que genera delphi, o si te da pereza puedes usar Strip y Upx.
__________________
mas confundido que Garavito el día del Niño. |
#6
|
||||
|
||||
Esto último es muy relativo. Delphi, por defecto, también guarda información para depuración y aún así su ejecutable no es tan grande como el de Lázarus. Yo seguí los pasos que dan en el primer enlace que puso rretamar y no disminuye ni un byte el tamaño.
// Saludos |
#7
|
||||
|
||||
Esta es la prueba que acabo de hacer:
Proyecto con 1 formulario en blanco Sin optimizaciones = 12.669KB Con optimizaciones = 1.607KB Desmarco generar información para la depuración Marco eliminar símbolos del ejecutable, enlazado inteligente, Mas pequeño en lugar de mas rápido. Resumen, se puede reducir más si usas Strip y Upx, o marcando y desmarcando otras opciones, pero no recuerdo cuales mas en este momento. Saludos.
__________________
mas confundido que Garavito el día del Niño. |
#8
|
|||
|
|||
mightydragonlor puedes decirme cuales fueron los pasos para lograr reducir el tamaño de esos fichero pues yo no lo he logrado.
Santiago |
#9
|
||||
|
||||
Cita:
Saludos.
__________________
mas confundido que Garavito el día del Niño. |
#10
|
||||
|
||||
Pero, como dije antes, en el caso de delphi, no tienes que quitarle la depuración para que el ejecutable tenga un tamaño razonable. En el caso de lázarus, esa es la única opción con la cual reduces considerablemente el tamaño, las otras sólo unos cuantos bytes.
// Saludos |
#11
|
||||
|
||||
Esto realmente no viene al caso, ya que Lazarus solo es el IDE, FreePascal el compilador y GDB el depurador, no es como Delphi que tiene un solo paquete con todo super optimizado, el depurador de Lazarus no tiene muchas cosas que si encuentras en delphi, pero igual funciona y logra su cometido, pero una de las razones por la que el tamaño de los ejecutables son tan grandes es precisamente que GDB necesita muchas cosas dentro del .exe y en unos formatos específicos, si compresiones y demás cosas, ya que como este ha sido un desarrollo independiente de el de Lazarus, no es como el equipo de desarrollo quisiera, creo que por ahí estaban haciendo un depurador, sino estoy mal era el mismo equipo de Lazarus, que corrija todas estas cosas y esté mas integrado con el IDE, además de ser mucho mejor, algo mas parecido al de Delphi y Visual Studio, pero solo hasta ahí sé.
__________________
mas confundido que Garavito el día del Niño. |
#12
|
||||
|
||||
Caray. Pues lo que viene al caso es que se obtiene un ejecutable gigantezco. Las razones ya me parecen lo de menos.
// Saludos |
#13
|
||||
|
||||
Si, pero es un ejecutable de depuración y no de ejecución, es tanto así que si abres el ejecutable con editor hexadecimal puedes obtener todos los nombres de las clases y sus métodos.
__________________
mas confundido que Garavito el día del Niño. |
#14
|
||||
|
||||
Sobre el tamaño de los ejecutables:
Cita:
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#15
|
||||
|
||||
Gracias por el dato Casimiro, si bien es verdad que Delphi produce exe's pequeños, pos así Lazarus los produzca grandes, no les veo mayor importancia, ya que se puede reducir =)
__________________
mas confundido que Garavito el día del Niño. |
#16
|
|||
|
|||
Cita:
Cita:
|
#17
|
||||
|
||||
Cita:
El ejecutable generado en lazarus es más grande, como ya se ha indicado, porque incluye mucha más (o de distinta forma) información para depuración que el que necesita delphi con su compilador, que están hechos el uno para el otro, sin embargo, lazarus usa un deparador externo (de terceros) que sirve para otros lenguajes. Lo de comprimir con upx, desde luego, ahí tienes razón.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#18
|
|||
|
|||
Hola, yo solo marco:
-Visualizar números de líneas en los errores de tiempo de ejecución en trazados inversos (-gl) -Usar archivo externo de simbolos de depuración para gdb (-Xg) Con esto, para un formulario en blanco, pasa de 13.384 KB a 1.608 KB, sin perder la depuración. Un saludo |
#19
|
||||
|
||||
Gracias por tu aportación.
Y bienvenido a clubdelphi
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#20
|
|||
|
|||
Muchas gracias a vosotros. Aunque sin registrarme, he visitado mucho esta página, y me ha sido de gran utilidad.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Delphi o lazarus a PHP en un solo paso | donald shimoda | Noticias | 4 | 10-09-2008 21:22:22 |
Delphi A Lazarus | rcm861 | Noticias | 6 | 10-09-2008 16:31:25 |
de turbo delphi a Lazarus | totote | Lazarus, FreePascal, Kylix, etc. | 3 | 12-06-2007 08:15:21 |
instalar lazarus y delphi | nightynvid | Lazarus, FreePascal, Kylix, etc. | 2 | 13-11-2006 20:08:04 |
[Lazarus] GTK+-devel en SUSE. problema instalar lazarus de esa libreria. | sakuragi | Lazarus, FreePascal, Kylix, etc. | 3 | 28-09-2006 04:31:09 |
|