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 Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-03-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si te fijas en la imagen que he puesto antes, project1 tiene un asterisco: project1* Eso quiere decir que es ejecutable.
Cita:

antonio@LINOX:/mnt/wd1tb/prj-lazarus/limpiarlineastxt$ ls -l
total 22108
drwxrwxr-x 2 antonio antonio 4096 ene 11 14:43 backup
drwxrwxr-x 3 antonio antonio 4096 ene 11 14:35 lib
-rw-rw-r-- 1 antonio antonio 3121 mar 8 00:15 limpiaos.txt
-rw-rw-r-- 1 antonio antonio 7485 ene 11 14:21 losmsj.txt
-rwxrwxr-x 1 antonio antonio 22317895 ene 11 14:44 project1 <---- La x es que es ejecutable, los demás no lo son.
-rw-rw-r-- 1 antonio antonio 137040 ene 11 14:26 project1.ico
-rw-rw-r-- 1 antonio antonio 1946 ene 11 14:40 project1.lpi
-rw-rw-r-- 1 antonio antonio 401 ene 11 14:26 project1.lpr
-rw-rw-r-- 1 antonio antonio 1878 ene 11 14:40 project1.lps
-rw-rw-r-- 1 antonio antonio 138128 ene 11 14:44 project1.res
-rw-rw-r-- 1 antonio antonio 323 ene 11 14:43 unit1.lfm
-rw-rw-r-- 1 antonio antonio 918 ene 11 14:43 unit1.pas
EDITO: Lo que ha dicho Román.
Responder Con Cita
  #2  
Antiguo 08-03-2016
Avatar de kapcomx
kapcomx kapcomx is offline
Miembro
 
Registrado: jun 2007
Ubicación: Puebla México
Posts: 350
Poder: 17
kapcomx Va por buen camino
compañeros, agradezco su ayuda, le meti todos los permisos al archivo ejecutable y ni asi funciona, fue tal mi desesperacion que le pedi al cliente una de sus maquinas le instale ubuntu recompile el proyecto y ya jalo en su maquina.

ahora lo que me temo es que mañana que intente copiar el proyecto en sus demas maquinas me salga con lo mismo y no funcione. pero bueno ya mañana se vera

saludos...
__________________
un tipo al cual la sociedad no le tiene el mas mínimo respeto no puede ser presidente....
Responder Con Cita
  #3  
Antiguo 08-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
No te sabría indicar por donde puede estar tu problema pero es que con los pocos detalles que das va a ser difícil encontrar una solución. Tu la desarrollaste y conoces los detalles internos de como la encaraste.

Dices que tu aplicación no hace nada de nada en el equipo del cliente. Dices que instalando Lazarus en el equipo de tu cliente y compilando ahí la cosa funciona.

Por estas dos cosas que dices yo ya mismo me animo a decir que el gato encerrado está en tu forma de programar. No has llevado una programación limpia. El error más tonto puede tirarnos el trabajo por la borda. Cosas como por ejemplo no configurar el path real hacia la base de datos y haber dejado el path relativo en nuestro propio de desarrollo. El uso de archivos/bibliotecas/recursos que están en nuestros equipos y no en los del cliente. Etc. O tener viejas mañas que en Windows se hace de una forma y en Linux no sirve como por ejemplo el uso de ParamStr(0) para leer la ruta del ejecutable. ¡En Linux esto no siempre es correcto!
En fin que hay muchos factores por ver y no hay pistas de tu parte.
El tema de permisos es sólo una pata... faltan ver las otras.

Sobre lo de hacer paquetes, yo diría que revises lo que dice la propia documentación sobre como distribuir nuestros "instaladores".

Yo mucho no puedo aportar. Si bien he empleado Lubuntu y Lazarus en él, mis pruebas en ese entonces era para desarrollo propio y no he podido darme el tiempo necesario para avanzar más. Hoy estoy estudiando como encarar la multiplataforma, y la compilación cruzada desde Windows hacia Linux.

EDITO:
Quizá esto te sirva para hacerte una idea de lo que debes distribuir con tu aplicación en Linux cuando utilizas MySQL.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]

Última edición por Delphius fecha: 08-03-2016 a las 04:31:37.
Responder Con Cita
  #4  
Antiguo 08-03-2016
bitbow bitbow is offline
Miembro
 
Registrado: jul 2006
Posts: 366
Poder: 18
bitbow Va camino a la fama
Si esta usando Lazarus puedes revisar este video https://www.youtube.com/watch?v=qT9fm0lQA7I
Indica como compliar en windows hacia linux (en el video se ve muy simple), si tus sistea no es un "Hola Mundo!!" esta claro que se tienen que realizar mas ajustes.

Saludos.
__________________
¡Ni como ayudarte Niño!!
bitbow
Responder Con Cita
  #5  
Antiguo 08-03-2016
Avatar de kapcomx
kapcomx kapcomx is offline
Miembro
 
Registrado: jun 2007
Ubicación: Puebla México
Posts: 350
Poder: 17
kapcomx Va por buen camino
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.
__________________
un tipo al cual la sociedad no le tiene el mas mínimo respeto no puede ser presidente....
Responder Con Cita
  #6  
Antiguo 08-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



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 15:57:44
Zeos+Lazarus+Ubuntu xanxov Conexión con bases de datos 2 03-01-2009 13:27:38
Ejecutar mi programa hecho en Lazarus sobre Linux mr_pascale Lazarus, FreePascal, Kylix, etc. 9 11-08-2007 18:54:25
Migrar Aplicacion Lazarus De Ubuntu A Windows volv87 Lazarus, FreePascal, Kylix, etc. 4 26-07-2007 08:03:07
[Lazarus]Aplicacion que no visualizan correctamenta labels en ubuntu dapper Pascalizado Linux 2 11-09-2006 12:17:51


La franja horaria es GMT +2. Ahora son las 16:04:32.


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