Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #21  
Antiguo 09-03-2016
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por kapcomx Ver Mensaje
Amigos, agradezco su atención y respuestas, y como bien dice el compañero Delphius, a veces pasamos por alto las pequeñas cosas, detalles que damos por hecho. El punto aqui es que nunca se me ocurrio revisar que el lazarus que instale en mi maquina era una version de 32 bits.

mientras que las maquinas del cliente usan 64 bits, ese fue lo que causo esta enorme problematica. Ahora se que no hay que pasar por alto todos esos detalles,

de antemano agradezco su atención y paciencia, prometo en lo sucesivo no tomar tan a la ligera un proyecto por pequeño que sea ( y menos si es en linux). les mando un cordial saludo a todos y gracias por su paciencia y respuestas.
No sólo en Linux hay que considerar el tema del bitness, ¡es en todos! El código puede aprovecharse y emplearse para compilar tanto para 32 como 64bits. Y para cuando sea necesario tienes las directivas de compilación para cada uno:

Código Delphi [-]
{$IFDEF CPU32}
// codigo para cpus 32bits aquí
{$ENDIF}


{$IFDEF CPU64}
// codigo para cpus 64bits aquí
{$ENDIF}

También hay que considerar el bitness SO, al menos cuando es Windows (y creería que también lo debe ser para Linux y Mac):
Código Delphi [-]
function TForm1.GetBitWindows: string;
var OS: string;
begin
  OS := 'Windows bits unknow';
  {$IFDEF WINDOWS}
    {$IFDEF WIN64}
      OS := 'Windows 64bits';
    {$ENDIF}
    {$IFDEF WIN32}
      OS := 'Windows 32bits';
    {$ENDIF}
    {$IFDEF WINCE}
      OS := 'Windows CE';
    {$ENDIF}
  {$ELSE}
    OS := 'Not is Windows';
  {$ENDIF}
  result := OS;
end;

No hace falta que virtualices Lazarus en un Ubuntu, aunque quizá sea una opción más a considerar y que en cierto modo ayuda a evitarse estar lidiando con configuraciones adicionales, etc. Lazarus permite compilación cruzada. Tal como lo demuestra el video que te ha comentado bitbow. Con CodeTyphon/Lazarus algunas cosas se pueden "automatizar", como descargar ya las bibliotecas de compilación cruzada desde ToolChain. En su momento yo he consultado sobre el tema en su foro. Las instrucciones detalladas las puedes ver en este hilo.

Y para completar y liar la parda, cuando uno anda pensando en multiplataforma no se tiene que olvidar el endianess. Si, la mayoría de las pcs comerciales son LittleEndian pero... también los hay BigEndian. Y si se va a estar compartiendo e intercambiando archivos entre distintos equipos por nuestra aplicación hay que prender la lamparita. Lazarus viene ya con funciones para lidiar con esto: SwapEndian(), BEtoN(), LEtoN(), NtoBE(), NtoLE() sobrecargadas que trabajan con todos los tipos enteros. También tiene sus directivas de compilación para esto:

Código Delphi [-]
{$IFDEF ENDIAN_BIG}
{$IFDEF ENDIAN_LITTLE}

Entonces hay que considerar de todo: bitness del equipo, bitness del SO, endianness, y en ciertos casos (sobre todo si es multiplataforma) versión del SO. Y sólo acabo de hacer referencia a nuestra aplicación y recursos de los que dispone (bibliotecas, componentes de tercero, etc) ¿Y del motor de base de datos que? Ha... otro "temita"...

Para quitarse algunos males y mañas recomiendo empezar al menos con tomarse esta aspirina.

¿Quien dijo que programar era fácil he?

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Instalar Lazarus en Ubuntu santi33a Lazarus, FreePascal, Kylix, etc. 3 29-08-2012 16:57:44
Zeos+Lazarus+Ubuntu xanxov Conexión con bases de datos 2 03-01-2009 14:27:38
Ejecutar mi programa hecho en Lazarus sobre Linux mr_pascale Lazarus, FreePascal, Kylix, etc. 9 11-08-2007 19:54:25
Migrar Aplicacion Lazarus De Ubuntu A Windows volv87 Lazarus, FreePascal, Kylix, etc. 4 26-07-2007 09:03:07
[Lazarus]Aplicacion que no visualizan correctamenta labels en ubuntu dapper Pascalizado Linux 2 11-09-2006 13:17:51


La franja horaria es GMT +2. Ahora son las 10:23:48.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi