Newsgroup: it.comp.lang.delphi
Titolo: [OT] svilippo WIn/Linux : Lazarus ?

scusate l'OT ma in Delphi di multipattaforma non se ne parla
ho trovato solo questo it-alt.comp.lazarus, se ve ne risultano altri 
benvengano.
il problema e' questo, provare ad installare Lazarus 9.30 su Linux
(Ubuntu 11.04).
prima di passare ad altri sistemi (es. QT, o Java) vorrei verificare
la fattibilita' di un progetto Client/Server su RDBMS Firebird.
ovvio Lazarus e' simile a Delphi e sarebbe veloce fare un progamma
di test per verificare se si comporta allo stesso modo in Windows e Linux.
scopo ? nuovo progetto che deve girare sia in Windows che Linux che
usi un DB libero (Fireird)
alternative ?
Java - non lo conosco, ho visto apllicativi Delphi integrati nella parte 
Web fatta in Java
C++ - va gia' meglio, QT mi pare si basi su questo
altre non saprei ........
sviluppate in multipiattaforma con ...? cominciano a chiedere la 
migrazione graduale da Windows a Linux.
^^^^
ho fatto questo test:da terminale
wget -c 
http://silvioprog.com.br/download
gia' qui ci sono problemi
wget -c 
http://silvioprog.com.br/download
--2011-07-20 22:04:44--  
http://silvioprog.com.br/download
Risoluzione di silvioprog.com.br... 66.147.240.99
Connessione a 
silvioprog.com.br
|66.147.240.99|:80... connesso.
HTTP richiesta inviata, in attesa di risposta... 301 Moved Permanently
Posizione: 
http://silvioprog.com.br/download/
 [segue]
--2011-07-20 22:04:46--  
http://silvioprog.com.br/download/
Riutilizzo della connessione esistente a 
silvioprog.com.br:80
.
HTTP richiesta inviata, in attesa di risposta... 403 Forbidden
2011-07-20 22:04:46 ERRORE 403: Forbidden.
questi sarebebbero i comandi da terminale
Open a terminal and execute the follow commands:
  wget -c 
http://silvioprog.com.br/download
/install_fpc_lazarus_svn_version.tar.gz
  tar -vzxf install_fpc_lazarus_svn_version.tar.gz
  ./install_fpc_lazarus_svn_version.sh

 gia' qui ci sono problemi
Non capisco perche` stai scaricando da questo sito, visto che:
 - Non e` il sito ufficiale (a meno che non sia un mirror);
 - Ubuntu dovrebbe avere Lazarus nei suoi repository (o almeno ci dovrebbe
   essere un PPA che lo contiene).
Enrico

    essere un PPA che lo contiene).
all'interno dei repository è presente la versione 0.9.28, comunque nel
sito 
www.lazarus.freepascal.org
 puoi scaricare la versione corrente
0.9.30 e installarla normalmente, oltre ai componenti ufficiali già
presenti nel pacchetto per interfacciarti ai database usa i componenti
Zeos e per la parte rete utilizza la libreria Lnet, ciao Brunello

 e per la parte rete utilizza la libreria Lnet
A proposito, sai se tale libreria permette una connessione SSH?
Enrico

dovrebbe ma non ho verificato, ciao Brunello

Zeos e per la parte rete utilizza la libreria Lnet, ciao Brunello
avevo provato in Delphi i componenti ZeosLib, ma erano monoutente, e se
usavo IbExpert + Firebird, per apportare variazioni dovevo chiudere il Db
grazie.
--- note per installare su Linux
3) da terminale posizionarsi nella cartella dove si sono scaricati i
file e estrarre l'archivio tar:
    cd /percorso_cartella
    /tar -xf fp_all_deb.tar
4) andare nella cartella deb (quella creata dopo l'estrazione) e
installare tutti i pacchetti
    cd deb
    sudo -i fp-*
    sudo -i  fpc-*
A questo punto è stato installato tutto quello che serve per programmare
con Pascal usando un ambiente simile a quello della Borland, avviabile
con il comando fp.
Se si vuole programmare in Delphi bisogno installare l'interfaccia
grafica Lazarus.
5) tornare alla cartella dove è contenuto il file
lazarus_0.9.20-0_i386.deb e installare
    cd ..
    dpkg - i lazarus_0.9.20-0_i386.deb
    (durante la preparazione dell'installazione viene fatto un controllo
dei pacchetti che servono per Lazarus, in caso ci sia qualche pacchetto
o libreria non installato, installarli usando aptitude install
/nome_pacchetto/, poi riprovare a installare lazarus)
Ora dovremmo avere finito, per avviare Lazarus usare il comando:
/usr/share/lazarus/startlazarus  (anche da user è eseguibile)
E' possibile andare in /usr/bin e creare un link simbolico, poi renderlo
eseguibile anche da user.
    cd /usr/bin/
    (diventare root)
    ln -s /usr/share/lazarus/startlazarus lazarus
    chmod 777 lazarus

 scusate l'OT ma in Delphi di multipattaforma non se ne parla
se ne parla, se ne parla.. ma forse ad agosto/settembre.. comunque sia,
in XE2 dovrebbe esserci un compilatore codice nativo per Mac.
Ale

>   essere un PPA che lo contiene).
si li ha, scarica circa 70 mb, ma installa Lazarus 9.28
ciao Maurizio 

> in XE2 dovrebbe esserci un compilatore codice nativo per Mac.
Lazarus con tutti i suoi limiti e' un ambiente di sviluppo per tre
sistemi diversi oltre la possibilita' di crosscompiler, anche se ho
letto non avendolo mai provato, che questa funzione ha molti problemi
di portabilita' su sistemi Mac, infatti consigliano di ricompilare il
sorgente sul sistema Mac

 si li ha, scarica circa 70 mb, ma installa Lazarus 9.28
Un'alternativa e` installare FreePascal da pacchetti Ubuntu, scaricare e 
decomprimere il tgz di Lazarus nella propria home directory e lanciare il 
make di compilazione. Il lato positivo e` che non avrai bisogno di troppi 
smanettamenti per installare i componenti, il lato negativo e` che sara` una 
installazione monoutente (ininfluente) e dovrai tenerla aggiornata a mano
Enrico

 scusate l'OT ma in Delphi di multipattaforma non se ne parla
Hai già avuto molte risposte in merito, aggiungo la mia esperienza 
personale.
Se sei un buon coder e "ne capisci" di delphi e di linux, lazarus è 
l'unica soluzione per migrare il tuo know how e il tuo codice senza 
cambiare linguaggio e modo di lavorare.
Intorno a Lazarus c'è una forte ed efficiente comunità di sviluppatori: 
l'ho frequentata per un anno e ottenevo sempre risposte puntuali e in 
tempi brevi. L'aspetto negativo è che si tratta di una nicchia: solida e 
ben tenuta, ma pur sempre una nicchia: ergo, se non trovi risposte o 
aiuto lì dentro, te la devi sbrigare da solo.
Come alternativa a Lazarus, io mi sto trovando bene con QT, scritto in 
C++ e *veramente* cross platform: l'ho provato lavorando sullo stesso 
progetto passando continuamente tra windows e linux: una volta allineati 
i sorgenti con SVN ricompilavo e tutto funzionava. Non c'erano switch 
strani da cambiare, o file da aggiungere in base alla piattaforma.
Ottima la community, ottimo il supporto, ci sono video, tutorial, 
libri.. un sacco di documentazione.
Se non mi credi verifica tu stesso:
http://developer.qt.nokia.com/elearning#c-127
non devi fare altro che metterti le cuffie, far partire un video e 
imparare..
Riguardo la licenza d'uso, tu puoi scegliere di fare programmi 
commerciali utiizzando sia la licenza GPL che quella commerciale.
Contrariamente a quanto detto qui dentro in passato, non sei obbligato 
ad acquistare una licenza commerciale per forza.
http://qt.nokia.com/products/licensing/
e chiarisciti tutti dubbi.
Dal punto di vista tecnologico, QT cambia il concetto di GUI come sei 
abituato in delphi: non ci sono più finestre (form) ma widgets. Non ci 
sono più le ancore e gli orientamenti ma ci sono i layouts.
http://qt.nokia.com/learning/online/training/specialized-elearning/qtwidgets
Riguardo la gestione dei dati, viene utilizzato il modello Model/View:
http://qt.nokia.com/learning/online/training/specialized-elearning/modelview
Per disegnare in 2D e 3D (opengl) ci sono le graphics views:
http://qt.nokia.com/learning/online/training/specialized-elearning/graphics-view
In soldoni QT è un framework di tecnologie che ti permette di ottenere 
codice compilabile cross platform: lo scalino iniziale per diventare 
produttivo è di 3-6 mesi, ma dipende molto da te e dal tempo che hai per 
imparare. Per toccare con mano senza troppi sforzi puoi sempre scaricare 
l'sdk, installarlo, aprirti uno dei tanti demo e premere CTRL+R.
-- 
morde
QT 4.7
Delphi (5,6,7.. expired)
Firebird Database

 C++ e veramente cross platform
Estendiamo: Qt e` un framework C++ e utilizzato principalmente con questo 
linguaggio. Nulla pero` ci impedisce di utilizzarlo con altri linguaggi, 
quali ad esempio Java o C#. A tal proposito si veda 
http://en.wikipedia.org/wiki/Qt_(framework)#Bindings
 (personalmente, 
preferisco utilizzarlo con Python ed il binding PyQT)
Enrico

> Come alternativa a Lazarus, io mi sto trovando bene con QT, {...]
l'idea di fondo e' proprio passare a qualcosa di piu' evoluto e QT da
quanto ho letto potrebbe essere la scelta giusta.
c'e' una cosa che mi incoriosisce  come fa Lazarus ad integrarsi con QT,
e a che scopo.
ciao Maurizio

 e a che scopo.
Vedi il link postato da enrico:
http://en.wikipedia.org/wiki/Qt_(framework)#Bindings
Have a good studying



grazie, ne avro' bisogno!

 e a che scopo.
Lo scopo mi sembra ovvio, ovvero creare un'applicazione desktop in Qt. Per 
quanto riguarda il come, qua c'e` una tabella riepilogativa sullo stato 
della LCL e la sua mappatura a Qt: 
http://wiki.freepascal.org/Roadmap
Enrico

> Enrico
ho fatto alcune prove con Lazarus (anche senza QT), per verificare la
diffrenza tra versone Win e Linux (rel 0.9.28 per entrambi)
.... sorpresa .... in Linux la TMainMenu non funziona o meglio si puo' 
creare un Menu ma non si vede ne a DesignTime ne a RunTime.
a questo punto chissa' quante altre cose saranno "bacate", non credo
sia affidabile a livello professionale.

 sia affidabile a livello professionale.
sono anni che � cos�. E' un sistema poco pi� che sperimentale, senza
un'azienda dietro.
Ale
-- 
L'intenzione dello spirito santo e' quella di insegnarci come si va in
cielo e non come va il cielo. (Card. Baronio - Processo a Galileo/1615)

 creare un Menu ma non si vede ne a DesignTime ne a RunTime.
Ohila`, ci si vede anche di qua... :-)
Mi ha colpito questa tua strana esperienza... lazarus lo conosco troppo
poco, ma non mi e` mai capitato niente del genere... e quando lo uso lo
uso su linux [in questo momento su una debian, ma per escludere
qualsivoglia caso particolare sono andato a provare anche sull'ultima
ubuntu... e confermo: nessun problema coi menu]...
Posso lanciare un'ipotesi? se non sbaglio hai poca esperienza con
ubuntu e se non ricordo male avevi prima provato ad installare la 9.30
trovata sul sito ufficiale, prima della 9.28 che immagino sia installata
dai repository ufficiali, e` cosi`?
Imho ci vedo due possibilita`... qualche pacchetto deb installato prima
[piu` recente, percio` non sostituito in automatico] crea conflitto con
la versione attuale... Oppure hai lavorato con la versione 9.30 ed ora
sei passato alla 9.28, ma ti e` rimasto qualche guaio nella directory
*nascosta* ".lazarus"... nel caso prova a cancellarla... normalmente
non ci sono problemi *progredendo* nelle versioni, ma quando si fa un
passo indietro puo` capitare di tutto...
Preciso che io non ho fatto alcun uso di Qt, ma solo gtk... lo specifico
soprattutto nel caso non ci avessi preso per niente con le altre
ipotesi...
Ciao ciao
Claudio

>
QT e' irrilevante, ho provato solo i componenti standard
ciao Maurizio

 altri modi per installare Lazarus non ne ho trovati (da Terminale intendo)
Ma hai usato la 9.30 un poco, giusto? percio` ha creato nella tua home
la directory nascosta [su linux tutte le directory il cui nome inizia
col punto risultano nascoste] ".lazarus" [con settaggi e compilazioni
per quella versione]... prova a cancellarla... da terminale un bel:
rm -r .lazarus
e se non sai cos'e` il completamento automatico in bash ti consiglio di
schiacciare tab in mezzo ad un comando... qualcosa di simile e` stato
fatto anche su windows... ma per quanto sia utile conoscerlo, non conta
adesso.
Per quanto posso dirti al momento sia sulla mia debian che su una
ubuntu 11.04 [Natty] che ho provato, i menu funziano piuttosto bene...
sia a runtime che a designtime...
E giusto per capire se un problema piuttosto importante come quello che
descrivi non derivi solo da circostanze particolari... se invece deriva
da altro piu` generale, be'... mi pare un guaio decisamente invalidante.
Ciao ciao
Claudio

> rm -r .lazarus
ho seguito , rimosso ./lazarus
per sicurezza ho rimosso anche tutti i pacchetti relativi che erano
ancora instalati
da repositori ho installato Lazarus (0.9.28)
da Gestione Pacchetti fpc-source, perche all'avvio di Lazarus non
trovava i sorgenti.
ripetuta la creazione con TMainMenu, resta tutto identico.
p.s. uso Ubuntu 11.04 64 bit - Lazarus mi fornisce
Versione #0.9.28.2-12
Data 2010-10-17
Versione FPC 2.4.0
Revisione SVN 22277 X86_64-LINUX-GTK2
provero' la rel a 32bit su una macchina virtuale Linux32 bit
ciao

 provero' la rel a 32bit su una macchina virtuale Linux32 bit
Ciao,
uso anch'io Lazarus su Ubuntu 11.04 64 bit e posso confermare che i 
menï¿œ funzionano. Questa ï¿œ la mia versione:
Lazarus 0.9.31 r31821 FPC 2.4.4 x86_64-linux-gtk 2
Per caso usi Unity? Se ï¿œ cosï¿œ, occhio perchï¿œ i menï¿œ non sono sulla 
finestra del tuo applicativo, ma sulla barra di stato che c'ï¿œ in alto 
nel desktop !!!!
Ciao, Mario

> Ciao, Mario
e' vero, sono proprio nel desktop !!!, da non credere, non mi era
passata neppure nell'anticamera del cervello ..... evidenti problemi
di connessione.
molte grazie

 molte grazie
Di niente, pensa che mi stavo preparando a segnalare il bug in mantis, 
poi mi ï¿œ venuta in mente questa "particolaritï¿œ" a cui faccio ancora 
fatica ad abituarmi dopo 3 mesi !!!!
Ciao, Mario

 un'azienda dietro.
Seriamente, vorrei capire perche` hai il dente cosi` avvelenato con l'open 
source, ci sono fior fiore di progetti (in svariati ambiti) che non hanno 
alcun appoggio da aziende esterne, eppure vanno che e` una meraviglia
Enrico

 vanno che e` una meraviglia
vanno finchè vanno, se ti si bloccano, hai problemi, o hai bisogno di
personalizzazioni poi ti attacchi al tram, o cerchi il pakistano o
l'australiano che ti sviluppino i moduli (o perdi mesi a studiarti i
sorgenti, con risultati poi del tutto incerti.. e capisci che per
un'azienda fare affidamento su un sw open source a queste condizioni è
come scommettere il proprio bilancio giocando al superenalotto, a meno
che non parliamo di sw non vitali, quindi accessori e sostituibili,
come tools e roba simile). Inoltre gli open source fanno concorrenza
sleale a chi con lo sviluppo sw ci vive.
Ale
-- 
- Quando fanno all'amore i preti? -  Nei ritagli di tempio. -

 sleale a chi con lo sviluppo sw ci vive.
Io ho cominciato a guadagnare qualcosa da quando, invece che finanziare 
Micosoft, Oracle e tanti altri, ho iniziato ad 
installare/supportare/contribuire progetti open source facendomi pagare 
il servizio e le funzionalità aggiuntive invece che pagare alla cieca il 
produttore per ottenere scatole chiuse smettendo anche di dover spesso 
dire al cliente che a) è un bug e non posso farci nulla e/o b) questo 
non lo fà e non si può fare.
-- 
Design for the future, because it will be here sooner than you think.
(C) Eric S. Raymond, from "The Art of Unix Programming"

 sleale a chi con lo sviluppo sw ci vive.
Beh mi dici in che modo gli open sources direttamente potrebbero fare 
concorrenza, dal momento che sono per l'appunto open, senza un 
proprietario,e distribuiti liberamente? Al limite la concorrenza te la 
fa il consulente che impara, personalizza e modifica un software 
opensource. (per esempio modificando Alfresco e installandoti il tuo CRM 
personalizzato).
Inoltre il software OS permette a chi lo "rivende" di guadagnare solo 
nel caso in cui esiste uno skill elevato, con conseguenti capacità , ed 
un servizio a continuo sostegno del cliente. A questo punto, la 
situazione appena descritta è, contrattualmente, la stessa in cui si 
trova (presumo) la tua azienda quando vende ad un cliente del software 
seguito da contratto di assistenza.
Mi spiego con un esempio: mi è capitato in passato di collaborare con 
una grossa software house che vende servizi web alle aziende: il suo 
core business è basato su soluzioni opensource Java e PHP based.
Qui il modello di business è il seguente: la software house paga la 
community open source comprando assistenza prioritaria e consulenza 
sulle modifiche al software. La ditta cliente paga la software house 
comprando il servizio e la manutenzione del loro sito web corporate. 
Come vedi non c'è nessuna concorrenza sleale verso nessuno.
La chiave di tutto è il servizio, non il software in sè.
Credo che la tua poca stima nei software opensource derivi dal fatto che 
non ti piace il modello di business che si crea intorno ad essi perchè 
fa concorrenza alla azienda dove tu lavori.
Eppure ogni giorno io penso che è stato grazie alla filosofia 
dell'opensource che abbiamo tutti migliorato le nostre capacità, capito 
e imparato nuovi modelli, linguaggi, fondato community dove sono 
circolate idee, e imparato a programmare condividendo codice.
Senza gli opensource saremmo ancora tutti qui a personalizzare software 
costosi di aziende senza disporre dei sorgenti e imbrigliati in una API 
rigida, contorta, ermetica o con SDK scandalosamente complicati.
Ti cito il mio caso, emblematico: ho customizzato per diversi anni il 
gestionale 1 di zucchetti. In tutti quegli anni non ho imparato niente 
di nuovo, non sono professionalmente cresciuto, ed il maggior ricavo 
l'aveva la zucchetti in quanto proprietaria del gestionale che noi 
rivendevamo. Ovviamente se una mia customizzazione non funzionava, i 
problemi erano esclusivamente miei. Come vedi, il business del closed 
source avvantaggia moltissimo chi lo produce a monte, e chi sta a 
valle... ciccia.
Alessandra ti ringrazio per l'occasione che ci hai dato di tornare a 
discutere su questo argomento. Vista l'ora tarda (sto lavorando per 
chiudere un lavoro, poi vacanza ;-) me la sono presa comoda e ho 
approfittato per mettere nero su bianco un pò di idee che il topic mi ha 
ispirato.
Ciao


 fatica ad abituarmi dopo 3 mesi !!!!
Grande ad individuare in unity il problema! :-)
Io non ci avevo minimamente pensato... ma forse puo` essere utile a
qualcuno il sapere che c'e` un modo molto semplice per evitare unity in
ubuntu... al login, una volta scelto l'utente, in basso c'e` una
combo-box dove e` possibile scegliere, oltre a *Ubuntu* con unity,
anche *Ubuntu classico* con gnome normalissimo... credo che unity sia
abbastanza da evitare, a meno di non avere l'esigenza di sfruttare al
massimo un video non grandissimo [come sui portatili]... anche se ha
indubbiamente qualche aspetto accattivante... e il menu fisso in alto
potrebbe rientrare fra questi. :-)
Ciao ciao
Claudio

 anche *Ubuntu classico* con gnome normalissimo... 
L'avevo fatto, poi ho letto che dalla prossima versione di Ubuntu 
(11.10) toglieranno questa possibilitï¿œ, quindi mi sono detto che era 
meglio iniziare ad abituarmi subito !!!
Al momento uso una combinazione ibrida: Unity con una barra di stato 
"gnome-panel" a scomparsa in basso (per avere i messaggi di stato dei 
vari applicativi) e cardapio nella dock per richiamare i menï¿œ "vecchia 
maniera".
Ciao, Mario

 problemi erano esclusivamente miei.
Se la documentazione di prodotto non è adeguata (come sempre più spesso 
accade) e/o qualcosa non và con un software chiuso puoi solo sbattere la 
testa al muro.
Con un software open se davvero ti interessa i sorgenti sono lì.
Infine se un giorno -dopo magari aver investito un sacco di tempo a 
studiare- le politiche del "produttore"  non ti vanno più bene nulla ti 
obbliga a rimanerci attaccato per le pa**e: puoi continuare a lvorarci 
come preferisci o farne un fork.
Ho giusto un'esperienza fresca in avvio:
- 
http://code.google.com/p/teebx/wiki/WhyThisFork


 massimo un video non grandissimo
A me non piace affatto per� credo che i MAC-chisti si trovino 
decisamente a loro agio.


 Con un software open se davvero ti interessa i sorgenti sono lì.
 >>[...]
aprofitto della discussione, cercando in rete ho trovato dei buoni
giudizi sul RAD C++ Ultima U++ disponibile si per Win che Linuc.
l'hu installato su Ubuntu, tramite gestione Pacchetti, ma non trovo dove
sia stao messo; il software Center mi dice che e' installato.
se usassi RAD Studio XE, valido non c'e' che dire, non credo potrei
fare il portin su Linux.

 (sto lavorando per chiudere un lavoro, poi vacanza ;-)
io invece sono appena tornato dalle ferie :(
Enrico