Newsgroup: it.comp.lang.delphi
Titolo: [OT] Passare a linux

Ciao a tutti e scusate l'OT ma dopo aver googlato parecchio e non avendo 
trovato risposte provo qui'
Premessa: lavoro in Pascal (e poi in Delphi) da quando esisteva il 
Pascal 1.0 e non lo mollo neanche morto
Ora sorge l'esigenza (lavorativa altrimenti non me ne importava più di 
tanto) di passare a sistema Linux per lo sviluppo di alcune macchine "a 
basso costo" ma non riesco a trovare una versione matura di pascal o 
delphi per questo SO.
Mi spiego... la Borland ha bloccato lo sviluppo di Kilix e, gli altri 
pacchetti che ho trovato in giro (vedi Lazarus che poi si basa su free 
pascal) non sono ancora maturi per uno sviluppo decente sotto Linux.
Qualcuno conosce altri sistemi di sviluppo in Pascal/Delphi per Linux 
che siano abbastanza maturi (per maturi intendo che si adattino a varie 
distribuzioni, supportino componenti anche da terze parti, abbiano 
pacchetti per il controllo seriale, USB, HTTP e non si blocchino dopo 10 
minuti con errori strani).
Personalmente ho provato Lazarus: bello, fatto bene, pieno di 
potenzialità ma devo dire che ancora c'e' da lavore per almeno due/tre 
anni prima di avere una distribuzione simile al buon vecchio Kilix, 
quest'ultimo non lo prendo neanche in considerazione dato che è un 
pacchetto "morto" - almeno a detta degli sviluppatori -
Un'altra domandina... ma CodeGear (la società che ha preso la parte IDE 
di Borland) ha niente nel paniere per gli sviluppatori Linux?
Grazie a tutti (e sempre forza Delphi)

 Pascal 1.0 e non lo mollo neanche morto
xche 6 cosi "assolutista"?
Immagina di trovare un buon compilatore c# o basic sotto linux che fa
tutto cio che ti serve..
Cosa fai, non lo usi x essere "fedele" al pascal?
Io non so informato riguardo Linux (e non solo...vorrei avere + tempo x
vedere tante cose!), ma secondo me se cerchi un po sul sito della
distribuzione che ti interessa forse trovi qualcosa.
Oppure, la butto li da totale niubbo in materia, forse sarebbe il caso
di dare un occhio a Java.
Ma molto dipende da COSA deve fare la tua applicazione...
SaluMi
A.

 Immagina di trovare un buon compilatore c#
Un compilatore C# immagino che debba richiedere Mono. Mono è una 
piattaforma stabile? Io non so e quindi non giudico :-)
-- 
news:it-alt.comp.software.openoffice : Il newsgroup dedicato a
OpenOffice.org, la suite open source di applicazioni per ufficio.
Saluti, VITRIOL

 Ma molto dipende da COSA deve fare la tua applicazione...
L'applicazione è un'interfaccia grafica per l'utilizzo di un sistema 
robotizzato per analisi cliniche: quindi con utilizzo di puntatori 
standard (mouse e tastiera), gestione di data base anche medio grandi, 
interfacciamento seriale o USB con il sistema robotizzato vero e 
proprio, gestione di diagnostica remota, gestione di un web server 
interno per l'utilizzo dello strumento e la presentazione dei dati, 
gestione di report più o meno complessi, utilizzo di script esterni e 
atre cosucce

Se hai bisogno di grafica...Lazarus o Kylix(io ci continuo a lavorare)
Se la grafica non è indispensabile ma lavori a livello di console o di
demoni, oltre i già citati c'è gpc, un compilatore stile gcc ma per il
pascal. Lo trovi gia compilato in molte distro
Bye,
Raktzo

 quasi tutte le nostre necessità
Le librerie in che linguaggio sono scritte?
Non sono utilizzabili con altri linguaggi?
Nel caso (spero non accada :-() CodeGear non mantenga le promesse e il
caro Delphi nel giro di qualche anno ci saluti, cosa pianificate di fare? 
Non sarebbe conveniente (come ti ha consigliato Alberto) migrare
gradualmente a un linguaggio multipiattaforma (C#/Mono o C++/QT)?
Naturalmente tutto IMHO.
Stefano.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 gradualmente a un linguaggio multipiattaforma (C#/Mono o C++/QT)?
Per Mono esiste anche Chrome, compilatore Object Pascal.


 Nel caso (spero non accada :-() CodeGear non mantenga le promesse [...]
Spero vivamente di no. Certo in questo caso passeremmo ad altri 
linguaggi ma non credo che accadrà - anche per esperienze passate... non 
so se vi ricordate negli anni 90 si diceva che il pascal era un 
linguaggio solamente didattico e di nessun futuro. Oppure quando è 
subentrata la Imprise nello sviluppo del Delphi si diceva che oramai era 
un tool al declino. Sono passati quasi 30 anni e siamo andati sempre 
avanti e con pacchetti sempre più performanti.
Ciao

> Un compilatore C# immagino che debba richiedere Mono.
ihmo, c# è un linguaggio, a prescindere da mono e .net.
ad esempio, esistono molte varianti di basic che girano su differenti
piattaforme, da dos a windows al mac..
A.

 Per Mono esiste anche Chrome, compilatore Object Pascal.
Questa mi mancava ;-)


 ihmo, c# è un linguaggio, a prescindere da mono e .net.
Uhm... C# è uno standard CLI, e suppongo debba necessariamente operare 
all'interno di una architettura .NET-style.
Probabilmente mi sbaglio, ma esistono compilatori C# nativi?


 Questa mi mancava ;-)
http://www.remobjects.com/page.asp?id={C5B896C5-5C61-4C1C-A617-136711C07F46}


 Ciao
Ciao


 quasi tutte le nostre necessità
Come periodo di transizione iniziare con wine?
Hai provato a vedere anche kdevelop?
-- 
-------------------------------
per scrivere in privato
togliere "1975nosp"
to reply remove "1975nosp"

pascal. Lo trovi gia compilato in molte distro
Per chiarezza: gpc è il front-end Pascal del gcc.  Il gcc ha molti
front-end, vedi Pascal, Ada, Fortran, ecc... ecc...

quasi tutte le nostre necessità
Secondo me vi conviene migrare, ora, ad un altro linguaggio, perché è
l'unica scelta possibile.  AFAIK, non esiste nulla di
professionalmente valido, per il Pascal, sotto Linux.


il freepascal (e anche lazarus ide) mi sembra un ottimo compilatore 
compatibile al 90% con  delphi(parlo di rtl).  
se poi per professionale intendi che bisogna pagare una licenza per 
usarlo allora ti do ragione.
Alessandro
http://fblib.altervista.org
--- posted by geoForum on 
http://www.delphiedintorni.it

 che siano abbastanza maturi
Se vuoi qualcosa uguale a Delphi, allora l'unica e` Lazarus. Tieni
presente, pero`, che e` indietro rispetto al mondo linux (e.g. l'unico
supporto veramente utilizzabile e` quello per le GTK 1.x, che oramai sono
obsolete ed utilizzate solo in casi molto particolari).
Se poi ti va bene un ambiente semplice per lavorare, personalmente direi
che FreePascal e un editor qualsiasi vanno piu` che bene (personalmente
uso GVim o Geany in ambito GTK/GNOME, e Kate o Kdevelop in ambito KDE).
Per la creazione di applicazioni che comunicano via TCP/IP, puoi usare le
librerie fornite con il FreePascal o librerie esterne (personalmente uso
le librerie Synapse).
Per applicazioni GUI, personalmente ho trovato tre alternative:
1) GTK 1.x (che ti sconsiglio per i motivi citati in precedenza);
2) GTK 2.x;
3) LPTK.
Le LPTK sono un framework grafico (simile a WxWidgets) scritto in Pascal
per Pascal, che dicono di essere multipiattaforma (personalmente non le ho
provate).
Le GTK, oltre alla possibilita` di scrivere manualmente il codice della
finestra, puoi usare Glade (nella versione 1 per le GTK 1.x) per la
creazione dell'interfaccia (ti viene generato un file XML da richiamare
appositamente da codice). Personalmente ho usato per esperimenti
l'accoppiata GTK2 + Glade, e devo dire che non vi e` alcuna difficolta`
nel loro utilizzo. Eccoti del codice semplice semplice:
program test;
{$mode objfpc} {$H+}
{$IFDEF GTK2_0}{$FATAL this demo needs gtk 2.4}{$ENDIF}
{$IFDEF GTK2_2}{$FATAL this demo needs gtk 2.4}{$ENDIF}
uses 
  Gtk2, Glib2, LibGlade2;
var
  main_window, main_button_exit       : pgtkwidget;
  main_button_add, main_button_report : pgtkwidget;
  xml                                 : pgladexml;
  glade_file                          : pchar;
{
  Procedura di chiusura dell'applicazione. Questa, in pratica viene
  agganciata alla X della finestra
}
procedure destroy_window(Widget:
PGtkWidget; Data: gpointer); cdecl; begin
  gtk_main_quit; {termino l'applicazione}
end;
{Procedura di click del pulsante}
procedure main_button_add_clicked(Widget: PGtkWidget; Data: gpointer); cdecl;
var
  add_window : pgtkwidget;
begin
  {
    Estraggo l'oggetto relativo a un'altra finestra dal file .glade
    (posso comunque estrarre e manipolare tutti gli oggetti presenti nel
    file .glade)
  }
  add_window := glade_xml_get_widget(xml, 'addWindow');
  gtk_widget_show(add_window);
end;
begin
  gtk_init (@argc, @argv); {inizializzazione delle librerie}
  glade_file := 'test.glade';
  xml := glade_xml_new (glade_file, nil, nil); {carica il file .glade}
  {carico gli oggetti su cui saranno agganciati i segnali}
  main_window := glade_xml_get_widget (xml, 'mainWindow');
  main_button_exit := glade_xml_get_widget(xml, 'btnMainExit');
  main_button_add := glade_xml_get_widget(xml, 'btnMainAdd');
 
  {aggancio il segnale di chiusura tramite X (delete_event) alla finestra}
  g_signal_connect(g_object(main_window), 'delete_event',
                   g_callback(@destroy_window), nil);
  {aggancio il segnale di click ad un pulsante}
  g_signal_connect(g_object(main_button_exit), 'clicked',
                   g_callback(@destroy_window), nil);
  {aggancio il segnale di click ad un pulsante}
  g_signal_connect(g_object(main_button_add), 'clicked',
                   g_callback(@main_button_add_clicked), nil);
  {visualizzo la finestra}
  gtk_widget_show(main_window);
  gtk_main();
end.
Enrico
P.S. c'e` da dire una cosa: il porting delle GTK in pascal e` fatto
linkando direttamente le librerie C. Non e` molto bella come soluzione ma
c'e` da dire che funziona...
P.P.S. per le seriali e le USB, dai un'occhiata a questo (e` sul sito di
Lazarus, ma e` applicabile anche al FreePascal):
http://wiki.lazarus.freepascal.org/Hardware_Access

Grazie e grazie a tutti quelli che mi hanno aiutato ad avere le idee più 
chiare

 compatibile al 90% con  delphi(parlo di rtl).
lo ho provato nella versione più recente per Win. E' lento tanto nel 
compilare che nell'IDE e scomodo da usare rispetto a Delphi come scorciatoie 
da tastiera e altro. Non è sicuramente un'alternativa a Delphi, al massimo 
può essere un ripiego per chi non si può permettere una licenza o per chi è 
costretto a sviluppare sotto altre piattaforme. E poi non è compatibile con 
i componenti di terze parti sviluppati per Delphi, il che taglia fuori le 
possibilità di sviluppo usando certi motori di database, certe interfacce e 
elementi grafici e parecchia altra *utilissima* roba commerciale e non.
Avalon 

 Avalon 
Andrea

"assolutistiche".
Quando avrai realizzato qualcosa di realmente competitivo con quanto
esiste sotto Win32, in Delphi, allora ne riparleremo.

 esiste sotto Win32, in Delphi, allora ne riparleremo.
http://www.downloadblog.it/post/2571/pixel-image-editor-la-vera-alternativa-economica-a-photoshop
Enrico


http://www.downloadblog.it/post/2571/pixel-image-editor-la-vera-alternativa-economica-a-photoshop
A parte che nella stessa pagina č riportato:
"Se non fosse buggato all'inverosimile sicuramente darebbe filo da
torcere sia a Photoshop che Gimp."
...mi dici in che versione di quale concorrente di Delphi per Linux č
scritto ?

io resterei nella sfera c/c++ con qualche libreria di appoggio tipo qt o 
  gtk .... mi sembrano le cose + stabili

 professionalmente valido, per il Pascal, sotto Linux.
Object C forse  è + vicino a delphi .. almeno del c++ ...

 scritto ?
Se leggevi le FAQ del programma, c'e` scritto chiaramente che e` scritto
in FreePascal + Lazarus...
Enrico

in FreePascal + Lazarus...
Non le ho lette, difatti.  E' per questo che chiedevo.



Intendi Objective-C, probabilmente.

 "concorrente" di Delphi su quel sistema.
1) stai parlando per pregiudizi;
2) l'esempio portato direi che e` calzante (e` scritto con un tool
compatibile con delphi ed e` venduto professionalmente);
3) l'esempio riportato non e` solo per linux, ma per tutte le
piattaforme per cui esiste il freepascal (linux, osx, morphos, freebsd,
qnx, windows, dos, skyos, ecomstation, beos).
Enrico