Italian community of Lazarus and Free Pascal

Presentazioni => Presentazioni nuovi utenti => Topic aperto da: Minsky - Marzo 16, 2023, 08:09:44 pm

Titolo: Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 16, 2023, 08:09:44 pm
Ciao a tutti, per prima cosa un grande grazie e vivissimi complimenti a chi ha avuto l'iniziativa di costruire questa pregevole risorsa: ho dato un'occhiata in giro e ho visto che c'è un'enorme quantità di informazioni estremamente interessanti.
Io provengo da Delphi come strumento di sviluppo, lo uso per realizzare semplici (ma non banali) applicativi di interfaccia per i sistemi di automazione, che è il mio ambito professionale.
Sto provando a cimentarmi con Lazarus perché sono convinto che il futuro sia linux, qui c'è poco da girarci intorno, Windows si sta deteriorando sempre più in fretta e non ha futuro in ambito industriale.
Non nascondo che però, sono giunto qui perché ho bisogno di aiuto. La situazione è talmente assurda che ho titubato a lungo per superare la vergogna di dover raccontare il caso che mi sta capitando...
Vabbé, per farla breve. Ho installato Lazarus sulla distribuzione che uso da qualche tempo con assoluta soddisfazione: Debian 11 con Plasma KDE. Tutto regolare, quasi d'intuito ho trovato ogni cosa dell'IDE perfettamente comprensibile, le similarità con Delphi sono notevoli e se qualcosa non è proprio uguale, ci si arriva con poco sforzo. Così ho cominciato provando a mettere un bottone e una label su un form, clicco il bottone e la label mostra "Hello World". Sempre per prova, faccio un altro progetto con vari controlli e tutto funziona. Terzo tentativo, scrivo una semplice utility di elaborazione statistica (replicando un programmino che avevo fatto tanto tempo fa in Delphi) che mi è utile avere sottomano, metto l'eseguibile sul desktop, tutto a meraviglia.
Rapito dall'entusiasmo, vedo questo tutorial http://www.festra.com/fp/les02.htm (http://www.festra.com/fp/les02.htm) e provo a fare quanto descritto. Funziona.
Abbagliato dalla visione di poter facilmente convertire il mio archivio di programmi Delphi in Lazarus, pesco una cosa semplice, un programmino che scambia dati sulla seriale, e provo a convertirlo in Lazarus. Purtroppo qualcosa non va per il suo verso, esce una montagna di errori. Niente di preoccupante, mi aspettavo che le cose non fossero del tutto facilissime. Accantono l'idea per un prossimo futuro, quando avrò studiato meglio il nuovo strumento e saprò dove mettere le mani, mi dico.
Ma succede la catastrofe. Volendo apportare qualche miglioria al programmino di statistica, cerco di aprire il progetto. Non si apre. Come mai? Che sto sbagliando? Provo ad aprire gli altri provini fatti da me. Non si aprono. Le finestre restano vuote. Allora creo un nuovo progetto, ci metto un bottone e una label, compilo, funziona, lo salvo, chiudo tutto, lo riapro, si apre, compila, funziona. Ma quelli fatti inizialmente no. Vado ad esaminare i file nelle cartelle, li apro con un editor di testo, confronto con la prova appena fatta. Non c'è niente di strano, sembra tutto regolare. Del resto, niente dovrebbe averli toccati. Io ho semplicemente cercato di aprirli. Ma Lazarus li rifiuta. Nessun messaggio d'errore, niente di niente. Solo le finestre che restano vuote.
Ci sto impazzendo. Sicuramente ho strosciato qualcosa, ma non capisco cosa e come.
Qualche suggerimento?
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 16, 2023, 09:18:20 pm
Ciao e  ben arrivato.
Anche io provengo (e sono ancora) in Delphi. E anche io lavoro in ambito industriale.

I problemi che riporti sono problemi importanti e gravi, se fossero problemi "noti" si conoscerebbero e molto probabilmente li avrebbero già "patchati".

Il mio consiglio, è di seguire dal ns. blog gli articoli di installazioni / risoluzione e disinstallare tutto Lazarus / FPC e reinstallare.

Prova a seguire questo: https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/ (https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/)

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: tito_livio - Marzo 16, 2023, 10:38:04 pm
Ciao, benvenuto.
Secondo me per lavorare con la porta seriale avrai installato/disinstallato qualcosa che ha compromesso il tutto. A questo punto anche io, come dice @DragoRosso, disinstallerei il Lazarus e lo reinstallerei.
Poi la porta seriale la installerei prima su qualche altra macchina per prova.
Anch'io ho la seriale ancora in Delphi, in tanti anni non ho avuto il tempo per cimentarmi davvero.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: xinyiman - Marzo 17, 2023, 08:39:21 am
Benvenuto tra noi, come ti hanno già detto gli altri, probailmente hai pacioccato con l'installazione di qualche plugin e conviene reinstallare.
Io trovo veramente comodo usare fpcupdeluxe per queste operazioni.

La guida qui: https://blog.lazaruspascal.it/2021/12/27/installare-lazarus-e-fpc-con-fpcupdeluxe/

E' scritta per windows, ma cambia poco per linux. Il mio consiglio è installare lazarus in una cartella di root con i permessi 0777 applicati in maniera ricorsiva.
Io uso ad esempio /fpcupdeluxe/yyyymmdd/

Dove yyyymmdd sta per la data del giorno in cui ho installato lazarus. Fpcupdeluxe effettua l'installazione tutta dentro la cartella. Così puoi avere versioni diverse di lazarus e fpc sulla stessa macchina.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 17, 2023, 12:49:58 pm
Ma succede la catastrofe. Volendo apportare qualche miglioria al programmino di statistica, cerco di aprire il progetto. Non si apre. Come mai? Che sto sbagliando? Provo ad aprire gli altri provini fatti da me. Non si aprono. Le finestre restano vuote. Allora creo un nuovo progetto, ci metto un bottone e una label, compilo, funziona, lo salvo, chiudo tutto, lo riapro, si apre, compila, funziona. Ma quelli fatti inizialmente no. Vado ad esaminare i file nelle cartelle, li apro con un editor di testo, confronto con la prova appena fatta. Non c'è niente di strano, sembra tutto regolare. Del resto, niente dovrebbe averli toccati. Io ho semplicemente cercato di aprirli. Ma Lazarus li rifiuta. Nessun messaggio d'errore, niente di niente. Solo le finestre che restano vuote.
Ci sto impazzendo. Sicuramente ho strosciato qualcosa, ma non capisco cosa e come.
Qualche suggerimento?

Ciao, hai provato a lanciare "startlazarus" da terminale e poi aprire il progetto?
Aprendo così, a volte nel terminale ti scrive dei messaggi che possono aiutarti a capire dove sta il problema.

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 17, 2023, 06:18:10 pm
Ciao e  ben arrivato.
Anche io provengo (e sono ancora) in Delphi. E anche io lavoro in ambito industriale.

I problemi che riporti sono problemi importanti e gravi, se fossero problemi "noti" si conoscerebbero e molto probabilmente li avrebbero già "patchati".

Il mio consiglio, è di seguire dal ns. blog gli articoli di installazioni / risoluzione e disinstallare tutto Lazarus / FPC e reinstallare.

Prova a seguire questo: https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/ (https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/)

Ciao
Grazie per il benvenuto!
È una situazione assolutamente frustrante. Nessuna operazione - senza che sia andato in esecuzione alcunché né che siano state apportate modifiche all'ambiente di sviluppo - dovrebbe generare un errore fatale e permanente.
Ovviamente adesso non è un problema disinstallare e reinstallare, sto solo giocando. Mi preoccuperebbe se fossi già in uno stato operativo.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 17, 2023, 06:22:43 pm
Ciao, benvenuto.
Secondo me per lavorare con la porta seriale avrai installato/disinstallato qualcosa che ha compromesso il tutto. A questo punto anche io, come dice @DragoRosso, disinstallerei il Lazarus e lo reinstallerei.
Poi la porta seriale la installerei prima su qualche altra macchina per prova.
Anch'io ho la seriale ancora in Delphi, in tanti anni non ho avuto il tempo per cimentarmi davvero.
Grazie per il benvenuto!
In modo deliberato, non ho installato né disinstallato alcunché. La seriale in questione è una porta USB a cui è collegato un Arduino, e con l'IDE di Arduino funziona benissimo. Ma Lazarus non può averla toccata perché appena ho lanciato la conversione del sorgente da Delphi ha emesso una caterva di errori e mi sono fermato lì.
Come detto sopra, procederò a reinstallare. Vediamo che succede.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 17, 2023, 06:27:40 pm
Benvenuto tra noi, come ti hanno già detto gli altri, probailmente hai pacioccato con l'installazione di qualche plugin e conviene reinstallare.
Io trovo veramente comodo usare fpcupdeluxe per queste operazioni.

La guida qui: https://blog.lazaruspascal.it/2021/12/27/installare-lazarus-e-fpc-con-fpcupdeluxe/

E' scritta per windows, ma cambia poco per linux. Il mio consiglio è installare lazarus in una cartella di root con i permessi 0777 applicati in maniera ricorsiva.
Io uso ad esempio /fpcupdeluxe/yyyymmdd/

Dove yyyymmdd sta per la data del giorno in cui ho installato lazarus. Fpcupdeluxe effettua l'installazione tutta dentro la cartella. Così puoi avere versioni diverse di lazarus e fpc sulla stessa macchina.
E ancora grazie per il benvenuto!
Non ho deliberatamente toccato nulla dell'installazione. E ho installato Lazarus con FPCupDeluxe. Rifaccio tutto daccapo, chissà forse qualcosa non era stato installato correttamente.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 17, 2023, 06:34:53 pm
Ma succede la catastrofe. Volendo apportare qualche miglioria al programmino di statistica, cerco di aprire il progetto. Non si apre. Come mai? Che sto sbagliando? Provo ad aprire gli altri provini fatti da me. Non si aprono. Le finestre restano vuote. Allora creo un nuovo progetto, ci metto un bottone e una label, compilo, funziona, lo salvo, chiudo tutto, lo riapro, si apre, compila, funziona. Ma quelli fatti inizialmente no. Vado ad esaminare i file nelle cartelle, li apro con un editor di testo, confronto con la prova appena fatta. Non c'è niente di strano, sembra tutto regolare. Del resto, niente dovrebbe averli toccati. Io ho semplicemente cercato di aprirli. Ma Lazarus li rifiuta. Nessun messaggio d'errore, niente di niente. Solo le finestre che restano vuote.
Ci sto impazzendo. Sicuramente ho strosciato qualcosa, ma non capisco cosa e come.
Qualche suggerimento?

Ciao, hai provato a lanciare "startlazarus" da terminale e poi aprire il progetto?
Aprendo così, a volte nel terminale ti scrive dei messaggi che possono aiutarti a capire dove sta il problema.

Ciao, Mario
Provato ora. Se digito "startlazarus" o "lazarus" o "lazarus_fpcupdeluxe" (questo è il nome del programma nel menù) da terminale ottengo solo "command not found".
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 17, 2023, 07:32:00 pm
Provato ora. Se digito "startlazarus" o "lazarus" o "lazarus_fpcupdeluxe" (questo è il nome del programma nel menù) da terminale ottengo solo "command not found".

Ciao,
ho provato ora su Ubuntu e funziona ...

Codice: [Seleziona]
bonmario@bonmario-desktop:~$ startlazarus
Info: (startlazarus) [TLazarusManager.Run] starting /usr/share/lazarus/2.2.2/lazarus ...
Info: (startlazarus) [TLazarusManager.Run] exe=/usr/share/lazarus/2.2.2/lazarus Params=[--started-by-startlazarus
--no-splash-screen
--force-new-instance
]
Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] PrimaryConfigPath="/home/bonmario/.lazarus"
Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] SecondaryConfigPath="/etc/lazarus"
Hint: (lazarus) [TBuildManager.SetBuildTarget] Old=x86_64-linux-gtk2 New=x86_64-linux-gtk2 Changed: OS/CPU=True LCL=False
LAZARUS END - cleaning up ...
FreeFormEditor: FormEditor1=TFormEditor
Hint: (lazarus) [TMainIDE.Destroy] B  -> inherited Destroy... TMainIDE
Hint: (lazarus) [TMainIDE.Destroy] END
bonmario@bonmario-desktop:~$ whereis startlazarus
startlazarus: /usr/bin/startlazarus /usr/share/man/man1/startlazarus.1.gz
bonmario@bonmario-desktop:~$

Andiamo per passi:
- hai installato Lazarus con i .deb forniti dalla tua distribuzione, o in qualche altra maniera
- se in altra maniera, come?
- se digiti il comando "whereis startlazarus", cosa ti esce?
- Lazarus lo fai partire con un lanciatore, giusto? Se è così, riesci a capire che comando lancia quel lanciatore, e lanciare tale comando dal terminale?

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 17, 2023, 09:25:22 pm
Ho provato ad installare Lazarus in una macchina WSL tramite il "curl" indicato in un precedente post.

Tutto funziona, sia da linea di comando che da grafica. Salvataggio, ripresa chiusura progetto.

Nessun problema riscontrato.

@bonmario ..... non hai l'ultima versione stabile 2.2.4 ....  ;D  ;D  ;D

Come nota aggiuntiva, attenzione che se converti programmi da Delphi, a maggior ragione se costruiti con le ultime versioni di Delphi (ad esempio la community edition 10.4.2) potrebbe essere che qualche problema ti compaia.

Principalmente è dovuto ai settaggi di conversione, se si mantengono le DFM o si usano le LFM, etc ....

A me nel passato erano accaduti alcuni problemi.

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 18, 2023, 07:03:47 pm


Andiamo per passi:
- hai installato Lazarus con i .deb forniti dalla tua distribuzione, o in qualche altra maniera
- se in altra maniera, come?
- se digiti il comando "whereis startlazarus", cosa ti esce?
- Lazarus lo fai partire con un lanciatore, giusto? Se è così, riesci a capire che comando lancia quel lanciatore, e lanciare tale comando dal terminale?

Ciao, Mario
Ho installato con FPCupDeluxe, seguendo proprio il tutorial alla pagina indicata sopra da xinyiman.

Se digito "whereis startlazarus" mi risponde solo "startlazarus:".

Lo shortcut creato dall'installazione punta a: "/home/rampegon/fpcupdeluxe/lazarus/lazarus --pcp="/home/rampegon/fpcupdeluxe/config_lazarus" %f "
Se do il comando tal quale da terminale, esce questa lunga lista di messaggi:

Gtk-Message: 18:55:27.507: Failed to load module "atk-bridge"

(lazarus:2675): Gtk-WARNING **: 18:55:27.607: Unable to locate theme engine in module_path: "adwaita",
using config file /home/rampegon/fpcupdeluxe/lazarus/lazarus.cfg
SetPrimaryConfigPath NewValue="/home/rampegon/fpcupdeluxe/config_lazarus" -> "/home/rampegon/fpcupdeluxe/config_lazarus"
SetPrimaryConfigPath NewValue="/home/rampegon/fpcupdeluxe/config_lazarus" -> "/home/rampegon/fpcupdeluxe/config_lazarus"
Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] PrimaryConfigPath="/home/rampegon/fpcupdeluxe/config_lazarus"
Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] SecondaryConfigPath="/etc/lazarus"
Hint: (lazarus) [TBuildManager.SetBuildTarget] Old=x86_64-linux-gtk2 New=x86_64-linux-gtk2 Changed: OS/CPU=True LCL=False

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.021: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.021: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.022: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.023: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.023: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.024: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.025: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.025: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.026: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.026: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.027: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.028: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.028: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.029: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.030: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.032: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.032: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.033: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.033: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.034: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.034: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.035: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.035: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.170: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.170: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.171: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.172: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.179: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.179: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.181: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.181: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.181: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.183: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed

(lazarus:2675): Gtk-CRITICAL **: 18:55:40.185: IA__gtk_widget_realize: assertion 'GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed
Warning: (lazarus) command line file not found: "/home/rampegon/%f"
----------------
LoadLFM Creating designer for hidden component of /home/rampegon/dummy/unit1.pas
InitOpenedProjectFile select form in designer: Form1:TForm1 TDesigner

Poi Lazarus parte normalmente, ma si comporta sempre nello stesso modo come descritto nel mio primo post.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 18, 2023, 07:16:03 pm
Ho provato ad installare Lazarus in una macchina WSL tramite il "curl" indicato in un precedente post.

Tutto funziona, sia da linea di comando che da grafica. Salvataggio, ripresa chiusura progetto.

Nessun problema riscontrato.

@bonmario ..... non hai l'ultima versione stabile 2.2.4 ....  ;D  ;D  ;D

Come nota aggiuntiva, attenzione che se converti programmi da Delphi, a maggior ragione se costruiti con le ultime versioni di Delphi (ad esempio la community edition 10.4.2) potrebbe essere che qualche problema ti compaia.

Principalmente è dovuto ai settaggi di conversione, se si mantengono le DFM o si usano le LFM, etc ....

A me nel passato erano accaduti alcuni problemi.

Ciao
No, non è un programma generato da una versione recente, era la XE.
Ma la conversione da Delphi in effetti è molto improbabile che mi serva davvero.
Io attualmente mi trovo a scrivere interfacce per scambio dati su TCP/IP. Pertanto uso le librerie Indy, di cui non so ancora se esista una versione per Lazarus. E per supportare i protocolli, come MODBUS e OPC, uso librerie di terzi di cui non ho il sorgente.
Quindi, lo studio di Lazarus è un progetto a medio - lungo termine. Implica che in futuro ci sia richiesta di applicativi su linux, altrimenti non avrei motivo, a parte il senso della bellezza - se si capisce cosa intendo - per dedicarmi a Lazarus.
Se sviluppassi con Lazarus, potrei continuare a fornire applicativi per Windows, ma sarei pronto a convertirli per linux semplicemente ricompilando (perché io sono già passato a linux e Delphi adesso è relegato in una macchina virtuale).
Ecco, tutto questo per spiegare meglio la psicologia della faccenda.
Sono semplicemente confuso e costernato di trovarmi incagliato in una fase così iniziale del mio approccio.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 18, 2023, 07:47:57 pm

LoadLFM Creating designer for hidden component of /home/rampegon/dummy/unit1.pas
InitOpenedProjectFile select form in designer: Form1:TForm1 TDesigner

Poi Lazarus parte normalmente, ma si comporta sempre nello stesso modo come descritto nel mio primo post.

Niente, era un tentativo, speravo che scrivesse qualcosa che aiutava a capire dove cercare il problema, ma non c'è niente di anomalo.

Domanda: da quello che hai scritto nel promo post, tu hai fatto almeno 3 o 4 progetti diversi. Non è che per caso li hai salvati tutti nella stessa directory?

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 18, 2023, 07:50:22 pm

@bonmario ..... non hai l'ultima versione stabile 2.2.4 ....  ;D  ;D  ;D


C'è il trucco !!! Quelle sono le directory in cui è stato installato LAzarus ad Agosto, quando ho cambiato il PC.
Almeno una volta al mese, aggiorno i sorgenti da Git, ma non mi va di cambiare i nomi delle directories ed i lanciatori, così lasco tutto invariato.
Se avessi ancora il vecchio PC, avresti visto 1.6.0, o qualcosa di simile !!!

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 18, 2023, 08:40:16 pm
A naso, però posso sbagliare, sembra che hai problemi con il GTK.

Probabilmente FPCDeluxe non lancia correttamente l'installazione.

A me sotto Ubuntu 22.04 l'installazione manuale dell'ultimo pacchetto "lazarus-project_2.2.4-0_amd64.deb" ha aggiunto ex novo tutte le librerie GTK (cento e passa megabytes).

Prova a disinstallare e scarica i singoli pacchetti .deb (sono tre) e installali manualmente, così vedi se e quali problemi ci sono.

Io attualmente mi trovo a scrivere interfacce per scambio dati su TCP/IP. Pertanto uso le librerie Indy, di cui non so ancora se esista una versione per Lazarus. E per supportare i protocolli, come MODBUS e OPC, uso librerie di terzi di cui non ho il sorgente.

Idem, Indy esiste anche per Lazarus e lo si scarica tramite "Online Package Manager" (dal menu "Pacchetto"). In Lazarus tra l'altro è aggiornato, cosa che purtroppo non accade in Delphi (me lo sono dovuto aggiornare a mano perdendo alcune funzionalità dell'IDE, tanto non le usavo).

Se vuoi ti posso indicare i pacchetti Modbus che uso io, sono free e compatibili con Lazarus. Per l'OPC, stò verificando, perchè dovrò affrontare un grosso progetto e vogliono come base di scambio dati a livello di supervisore lo standard OPC UA (non amo assolutamente OPC e i suoi derivati).

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 18, 2023, 11:28:02 pm

LoadLFM Creating designer for hidden component of /home/rampegon/dummy/unit1.pas
InitOpenedProjectFile select form in designer: Form1:TForm1 TDesigner

Poi Lazarus parte normalmente, ma si comporta sempre nello stesso modo come descritto nel mio primo post.

Niente, era un tentativo, speravo che scrivesse qualcosa che aiutava a capire dove cercare il problema, ma non c'è niente di anomalo.

Domanda: da quello che hai scritto nel promo post, tu hai fatto almeno 3 o 4 progetti diversi. Non è che per caso li hai salvati tutti nella stessa directory?

Ciao, Mario
No, ho creato una cartella diversa per ciascuno, nella home, così come ho fatto per le prove successive al famigerato tentativo di conversione da formato Delphi, e queste altre sono tutte perfettamente accessibili: apro, compilo, eseguo, chiudo, riapro... è pazzesco.
N.B.: ho tentato un banale trucco: ho creato una nuova cartella e ci ho copiato dentro tutti i file di uno dei progetti che Lazarus si rifiuta di aprire. Niente, non apre neanche la copia.

A questo punto, sarei deciso a tentare la reinstallazione. Ma mi sono reso conto che non so come disinstallare Lazarus, o meglio FPCUPdeluxe... in rete non trovo istruzioni al riguardo, e nell'elenco dei pacchetti installati non compare.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 18, 2023, 11:36:25 pm
A naso, però posso sbagliare, sembra che hai problemi con il GTK.

Probabilmente FPCDeluxe non lancia correttamente l'installazione.

A me sotto Ubuntu 22.04 l'installazione manuale dell'ultimo pacchetto "lazarus-project_2.2.4-0_amd64.deb" ha aggiunto ex novo tutte le librerie GTK (cento e passa megabytes).

Prova a disinstallare e scarica i singoli pacchetti .deb (sono tre) e installali manualmente, così vedi se e quali problemi ci sono.

Io attualmente mi trovo a scrivere interfacce per scambio dati su TCP/IP. Pertanto uso le librerie Indy, di cui non so ancora se esista una versione per Lazarus. E per supportare i protocolli, come MODBUS e OPC, uso librerie di terzi di cui non ho il sorgente.

Idem, Indy esiste anche per Lazarus e lo si scarica tramite "Online Package Manager" (dal menu "Pacchetto"). In Lazarus tra l'altro è aggiornato, cosa che purtroppo non accade in Delphi (me lo sono dovuto aggiornare a mano perdendo alcune funzionalità dell'IDE, tanto non le usavo).

Se vuoi ti posso indicare i pacchetti Modbus che uso io, sono free e compatibili con Lazarus. Per l'OPC, stò verificando, perchè dovrò affrontare un grosso progetto e vogliono come base di scambio dati a livello di supervisore lo standard OPC UA (non amo assolutamente OPC e i suoi derivati).

Ciao
Se riesco a disinstallare tutto, reinstallo come mi consigli. Oppure potrei provare a fare una macchina virtuale e installare lì, in una situazione completamente "vergine".

Ottima notizia che gli Indy ci siano anche per Lazarus. L'OPC UA è un dinosauro ma tocca farselo piacere.

Grazie di tutto quello che mi potrai indicare, nella speranza che prima o poi ci possa lavorare!
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 19, 2023, 01:04:50 am
A questo punto, sarei deciso a tentare la reinstallazione. Ma mi sono reso conto che non so come disinstallare Lazarus, o meglio FPCUPdeluxe... in rete non trovo istruzioni al riguardo, e nell'elenco dei pacchetti installati non compare.

Non ti server disinstallare FPCDeluxe, da FPCDEluxe disinstalla Lazarus e FPC.

Poi cancella la cartella (e relativi file e sottocartelle ovviamente) dove FPCDeluxe ha installato Lazarus.

Segui il blog che ti ho già indicato: https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/ (https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/).

Esegui come indicato le fasi della disinstallazione verificando anche le directory indicate e se ci  sono cancellale.

Installa tramite curl come indicato, e se qualcosa và storto semplicemente esegui a mano in sequenza le installazioni dei tre pacchetti deb già presenti.

Di quelli che sono andati a buon fine ti dirà che sono OK, di quelli che invece hanno avuto problemi tenterà la reinstallazione.

Aprirò un nuovo topic per il pacchetto ModBus (io uso solo il TCP/IP), penso che anche tu ormai userai quello (non più l'RTU).

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 19, 2023, 07:28:09 am
tentato un banale trucco: ho creato una nuova cartella e ci ho copiato dentro tutti i file di uno dei progetti che Lazarus si rifiuta di aprire. Niente, non apre neanche la copia.

A questo punto, sarei deciso a tentare la reinstallazione. Ma mi sono reso conto che non so come disinstallare Lazarus, o meglio FPCUPdeluxe... in rete non trovo istruzioni al riguardo, e nell'elenco dei pacchetti installati non compare.

Da quello che ho capito, i tuoi progetti incriminati sono solo prove.
Potresti zipparne almeno uno e postarlo qui?
Almeno in questo modo, se a noi funziona, significa che c'è qualcosa che non va nella tua installazione, e quindi varrebbe la pena reinstallare.
Se invece da lo stesso problema anche a noi, c'è qualcosa di corrotto nei sorgenti.

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 20, 2023, 07:10:59 pm
A questo punto, sarei deciso a tentare la reinstallazione. Ma mi sono reso conto che non so come disinstallare Lazarus, o meglio FPCUPdeluxe... in rete non trovo istruzioni al riguardo, e nell'elenco dei pacchetti installati non compare.

Non ti server disinstallare FPCDeluxe, da FPCDEluxe disinstalla Lazarus e FPC.

Poi cancella la cartella (e relativi file e sottocartelle ovviamente) dove FPCDeluxe ha installato Lazarus.

Segui il blog che ti ho già indicato: https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/ (https://blog.lazaruspascal.it/2022/03/03/installazione-in-linux-risoluzione-problemi/).

Esegui come indicato le fasi della disinstallazione verificando anche le directory indicate e se ci  sono cancellale.

Installa tramite curl come indicato, e se qualcosa và storto semplicemente esegui a mano in sequenza le installazioni dei tre pacchetti deb già presenti.

Di quelli che sono andati a buon fine ti dirà che sono OK, di quelli che invece hanno avuto problemi tenterà la reinstallazione.

Aprirò un nuovo topic per il pacchetto ModBus (io uso solo il TCP/IP), penso che anche tu ormai userai quello (non più l'RTU).

Ciao
Grazie delle dritte, purtroppo qui c'è qualcosa che non quadra.
Eseguendo i comandi indicati in quella pagina, ottengo questo:

rampegon@debian:~$ sudo apt --purge remove lazarus-project
[sudo] password for rampegon:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package lazarus-project
rampegon@debian:~$ sudo apt --purge remove fpc-src
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package 'fpc-src' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
rampegon@debian:~$ sudo apt --purge remove fpc-laz
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package fpc-laz
rampegon@debian:~$ sudo apt --purge remove lazarus-ide
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package 'lazarus-ide' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
rampegon@debian:~$ sudo apt autoremove
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

E a questo punto mi son fermato.

Di MODBUS RTU su RS485 se ne sono installati fino a una decina di anni fa, adesso in giro ne esistono ancora migliaia... o milioni, e stanno funzionando come muli.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 20, 2023, 07:15:33 pm
tentato un banale trucco: ho creato una nuova cartella e ci ho copiato dentro tutti i file di uno dei progetti che Lazarus si rifiuta di aprire. Niente, non apre neanche la copia.

A questo punto, sarei deciso a tentare la reinstallazione. Ma mi sono reso conto che non so come disinstallare Lazarus, o meglio FPCUPdeluxe... in rete non trovo istruzioni al riguardo, e nell'elenco dei pacchetti installati non compare.

Da quello che ho capito, i tuoi progetti incriminati sono solo prove.
Potresti zipparne almeno uno e postarlo qui?
Almeno in questo modo, se a noi funziona, significa che c'è qualcosa che non va nella tua installazione, e quindi varrebbe la pena reinstallare.
Se invece da lo stesso problema anche a noi, c'è qualcosa di corrotto nei sorgenti.

Ciao, Mario
Ottima idea, e grazie in anticipo per la disponibilità.
Allego giusto il primo che ho fatto.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 20, 2023, 07:56:04 pm
Era danneggiato il file LPI.

Ora è a posto, sovrascrivi i due file dallo zip ... o confronta con gli originali per vedere le differenze.

Ciao, poi ti spiego.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 20, 2023, 09:29:37 pm
In pratica, nel file LPI mancavano i riferimenti alla UNIT1. Il progetto aveva solo il file LPR.

E' bastato dal menu "Progettto" / "Analizzatore Progetti" clicccare con il tasto destro del mouse sulla voce "File" e aggiungere selezionando "AGGIUNGI" il file Unit1.pas.

Mandi
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 21, 2023, 08:05:07 am
Ciao,
on alternativa a quanto scritto da @DragoRosso, puoi anche fare così:
- apri il tuo progetto
- tra le "uses", c'è "Unit1" ci fai sopra un "CTRL + click" (col tasto sinistro), e ti apre la unit, ma non il Form ad essa associato
- premi F12, e ti apre anche il Form

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 21, 2023, 09:36:30 am
Ciao,
on alternativa a quanto scritto da @DragoRosso, puoi anche fare così:
- apri il tuo progetto
- tra le "uses", c'è "Unit1" ci fai sopra un "CTRL + click" (col tasto sinistro), e ti apre la unit, ma non il Form ad essa associato
- premi F12, e ti apre anche il Form

Ciao, Mario

C'era anche da aggiungere l'autocreazione della Form alla partenza del programma ... quella o la scriveva a mano o nisba perchè nel menu opzioni -> FORM a me risultava vuoto ....

Con l'inserimento della unit invece gli viene proposta la possibilità dell'autocreazione alla partenza.

Diciamo che sul lato configurazione del progetto qualche miglioria sarebbe da fare. Ci sono info doppie legate che inficiano il funzionamento se non allineate come nel caso in questione.

L'importante comunque è che sia risolvibile e che non si perda nulla.

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 21, 2023, 09:44:25 am
Cavolo, hai ragione ... l'ho anche lanciato, e non mi sono accorto che non usciva il form: quello che vedevo era quello del sorgente, e non quello del compilato !!!
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 21, 2023, 10:25:51 am
Cavolo, hai ragione ... l'ho anche lanciato, e non mi sono accorto che non usciva il form: quello che vedevo era quello del sorgente, e non quello del compilato !!!

 ;D ;D ;D

La prima volta che l'ho lanciato anche io sono rimasto perplesso .... non c'era traccia del programma .... senza Form non risultava da nessuna parte se non nel Task Manager ...
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 22, 2023, 09:08:37 pm
Allora.
Mi sono picchiato un po' con i file .lpr e .lpi, ma ancora nessun risultato.

Ho confrontato gli .lpr dei progetti che non si aprono più, con quello di un progetto che invece funziona.
Si nota questa differenza:

Nei file "guasti" la prima riga dopo Begin è commentata:

  //RequireDerivedFormResource:=True;
 
Nel file "buono" invece non è commentata:

  Requirederivedformresource:=True;
 
 
Confrontando Gli .lpi si notano queste differenze:

Nei file "guasti" sotto <General> c'è un tag in più (in quello "buono" non c'è):
      <Flags>
        <CompatibilityMode Value="True"/>
      </Flags>
     
     
Poi: <Units Count="1"> mentre in quello buono è <Units Count="2">
e come già detto da DragoRosso, nei "guasti" mancano i riferimenti alla Unit1:

      <Unit1>
        <Filename Value="unit1.pas"/>
        <IsPartOfProject Value="True"/>
        <ComponentName Value="Form1"/>
        <ResourceBaseClass Value="Form"/>
        <UnitName Value="Unit1"/>
      </Unit1>

Va da sé che ho provato a correggere a mano tutte queste differenze ma senza ottenere alcun effetto.

Quando provo ad aprire uno dei progetti "corrotti", quello che ottengo è la schermata di cui allego lo screenshot.
Quello che si vede nell'editor non è il contenuto del .lpr del progetto. È, probabilmente, un template di default.
Stesso discorso per quanto visibile nel pannello di destra: gli oggetti sono vuoti e irresponsivi.

Mi arrendo.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 22, 2023, 09:18:30 pm
In pratica, nel file LPI mancavano i riferimenti alla UNIT1. Il progetto aveva solo il file LPR.

E' bastato dal menu "Progettto" / "Analizzatore Progetti" clicccare con il tasto destro del mouse sulla voce "File" e aggiungere selezionando "AGGIUNGI" il file Unit1.pas.

Mandi

Non fare le modifiche a mano, segui quanto ti ho scritto precedentemente e quoto qui sopra, se vai al post c'è anche una immagine.

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 23, 2023, 08:02:41 am

Non fare le modifiche a mano, segui quanto ti ho scritto precedentemente e quoto qui sopra, se vai al post c'è anche una immagine.

Ciao

Concordo !!
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 23, 2023, 10:08:35 am
In pratica, nel file LPI mancavano i riferimenti alla UNIT1. Il progetto aveva solo il file LPR.

E' bastato dal menu "Progettto" / "Analizzatore Progetti" clicccare con il tasto destro del mouse sulla voce "File" e aggiungere selezionando "AGGIUNGI" il file Unit1.pas.

Mandi

Non fare le modifiche a mano, segui quanto ti ho scritto precedentemente e quoto qui sopra, se vai al post c'è anche una immagine.

Ciao
Ehmmm, non mi sono spiegato bene. I progetti proprio non si aprono. Non è che si aprono e poi non compilano, non si aprono affatto. Quindi non riesco a fare alcuna correzione per mezzo dell'IDE.
Ho anche provato a prendere i due file che hai "aggiustato", come avevi suggerito, e sostituire quelli originali ma non succede niente.
Ed è evidente che, se l'IDE non apre i file, qualunque correzione fatta "esternamente" non ha alcun effetto (come mi appare lampante solo adesso, mi scuso della tonteria).
Il problema sta da qualche altra parte...
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 23, 2023, 11:12:06 am
Allora, mi vien da dire che c'è qualcosa nella tua installazione di Lazarus che non funziona ...
Io ho provato ad aprire il tuo progetto di esempio qui al lavoro, in Windows.
Se mi ricordo, stasera ci provo in Linux, tanto per togliermi il dubbio.

Nel frattempo, se hai a disposizione un altro PC, reale o anche virtuale su cui installare Lazarus, puoi provare anche tu a vedere se lì ti apre o meno il progetto che hai postato qui.

In base poi alla prova fatta da me, ed a quelle fatte da te, vediamo come proseguire

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Marzo 23, 2023, 11:28:24 am
on mi sono spiegato bene. I progetti proprio non si aprono. Non è che si aprono e poi non compilano, non si aprono affatto. Quindi non riesco a fare alcuna correzione per mezzo dell'IDE.
Ho anche provato a prendere i due file che hai "aggiustato", come avevi suggerito, e sostituire quelli originali ma non succede niente.
Ed è evidente che, se l'IDE non apre i file, qualunque correzione fatta "esternamente" non ha alcun effetto (come mi appare lampante solo adesso, mi scuso della tonteria).
Il problema sta da qualche altra parte...

Qui non posso andare oltre ... non sono un esperto di Lazarus sotto Linux. Se creando progetti nuovi tutto funziona e hai problemi con quelli importati potrebbe essere effettivamente un problema di Lazarus / FPC (magari legata alla versione Linux).

Problema ovviamente tra virgolette, l'importazione è eseguita sulla base di DELPHI 7 e anche se è vero che progetti moderni vengono importati, io nelle prove che ho fatto ho dovuto comunque mettere mano a ciò che viene convertito.

Un solo esempio su tutti: in Delphi, già dal 2009, è tutto UNICODE e quindi le definizioni di "string" si basano sui WIDECHAR cioè caratteri a due byte.

In Lazarus, ma ciò proviene dal "cuore" cioè da FPC,  invece per default la definizione di "string" si basa sui AnsiChar, cioè caratteri a un byte.

Se il codice è sviluppato come da manuale, in realtà problematiche non ci sono ... ma alcuni aspetti specifici, come nel mio caso che mi occupo di comunicazione tra apparati diversi, devono essere corretti a mano altrimenti anche se funziona tutto logicamente poi praticamente sarà un disastro.

E bisogna fare attenzione anche al linguaggio: nonostante sia Delphi che Lazarus siano OOP e ovviamente il Pascal la fà da padrone, da entrambi le parti sono stati aggiunte delle funzionalità, classi o altro sia al linguaggio (vedesi tanto per dirne una le variabili inline in Delphi) che al suo supporto.

Funzionalità di Helper, RTTI sono tendenzialmente incompatibili tra un ambiente e l'altro (sia perchè mancano si aperchè proprio non supportati).

Lazarus nasce si sà come controparte opensource di Delphi, ma piano piano ha preso una sua strada legata soprattutto al fatto di essere nativamente MULTIPIATTAFORMA (anche se qua qualche punto interrogativo lo inserirei) e ciò ovviamente ha reso più complesso il porting da Delphi a Lazarus.

Comunque, a meno che non si tratti di progetti MEGA con decine e decine di unità e FORM, lavorandoci un pò a mano si combina generalmente.

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: bonmario - Marzo 23, 2023, 06:18:57 pm
Allora, mi vien da dire che c'è qualcosa nella tua installazione di Lazarus che non funziona ...
Io ho provato ad aprire il tuo progetto di esempio qui al lavoro, in Windows.
Se mi ricordo, stasera ci provo in Linux, tanto per togliermi il dubbio.

Nel frattempo, se hai a disposizione un altro PC, reale o anche virtuale su cui installare Lazarus, puoi provare anche tu a vedere se lì ti apre o meno il progetto che hai postato qui.

In base poi alla prova fatta da me, ed a quelle fatte da te, vediamo come proseguire

Ciao, Mario

Ok, a me lo apre anche in Ubuntu.

Iniziamo così:
chiudi lazarus e vai nella tua /home/<utente> e partendo sempre da lì, esegui questi punti
- dovresti avere una directory ".config", che a sua volta ne contiene una che si chiama "lazarus". Rinomina "lazarus"
- sempre sotto /home/<utente> dovresti avere una directory ".lazarus" (occhio al punto come primo carattere !!) Rinomina pure questa


Prova a riaprire il progetto di test che hai postato qui

Ciao, Mario
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Marzo 24, 2023, 08:45:25 pm
on mi sono spiegato bene. I progetti proprio non si aprono. Non è che si aprono e poi non compilano, non si aprono affatto. Quindi non riesco a fare alcuna correzione per mezzo dell'IDE.
Ho anche provato a prendere i due file che hai "aggiustato", come avevi suggerito, e sostituire quelli originali ma non succede niente.
Ed è evidente che, se l'IDE non apre i file, qualunque correzione fatta "esternamente" non ha alcun effetto (come mi appare lampante solo adesso, mi scuso della tonteria).
Il problema sta da qualche altra parte...

Qui non posso andare oltre ... non sono un esperto di Lazarus sotto Linux. Se creando progetti nuovi tutto funziona e hai problemi con quelli importati potrebbe essere effettivamente un problema di Lazarus / FPC (magari legata alla versione Linux).

[...]
Riepilogo la vicenda.
A questo punto, mi sembra che non mi rimanga altra strada che mettere su una macchina virtuale con la stessa versione di Debian, e installarci Lazarus.
Appena ho una finestra di tempo mi ci applico.
A presto e grazie di cuore.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: xinyiman - Marzo 26, 2023, 10:15:05 am
on mi sono spiegato bene. I progetti proprio non si aprono. Non è che si aprono e poi non compilano, non si aprono affatto. Quindi non riesco a fare alcuna correzione per mezzo dell'IDE.
Ho anche provato a prendere i due file che hai "aggiustato", come avevi suggerito, e sostituire quelli originali ma non succede niente.
Ed è evidente che, se l'IDE non apre i file, qualunque correzione fatta "esternamente" non ha alcun effetto (come mi appare lampante solo adesso, mi scuso della tonteria).
Il problema sta da qualche altra parte...

Qui non posso andare oltre ... non sono un esperto di Lazarus sotto Linux. Se creando progetti nuovi tutto funziona e hai problemi con quelli importati potrebbe essere effettivamente un problema di Lazarus / FPC (magari legata alla versione Linux).

[...]
Riepilogo la vicenda.
  • Dopo aver covato a lungo l'idea di imparare uno strumento che mi consenta di sviluppare per linux, trovo quel tutorial più volte citato che per mezzo di FPCupDeluxe promette di risolvere magicamente tutte le intricacies dell'installazione di Lazarus.
  • Procedo ad installare sotto il fedele Debian che mi sta dando prova di grande solidità.
  • Mi trastullo con qualche semplice Form e tutto fila liscio.
  • Provo a convertire un vecchio progetto Delphi che parla con un Arduino sulla seriale USB, ma non si converte bene e lascio perdere senza neanche tentare la compilazione.
  • Dopo qualche giorno riprendo Lazarus con l'intenzione di apportare qualche miglioria a uno dei progetti fatti inizialmente con Lazarus. Non si apre. Dapprima penso di essere scemo io.
  • Ma nessuno dei progetti fatti inizialmente si apre più.
  • Creo un nuovo progetto, funziona tutto, posso chiuderlo, riaprirlo, funziona tutto.
  • Dopo lunghe ricerche in rete per vedere di capirci qualcosa, ma senza alcun esito, approdo a questo stimato forum.
  • Tutti i consigli qui ricevuti e applicati risultano vani.
  • In particolare, non è possibile disinstallare Lazarus / FPCup Deluxe. Forse a causa di quello che si è corrotto, non lo sapremo mai.
A questo punto, mi sembra che non mi rimanga altra strada che mettere su una macchina virtuale con la stessa versione di Debian, e installarci Lazarus.
Appena ho una finestra di tempo mi ci applico.
A presto e grazie di cuore.

A titolo informativo, fpcupdeluxe è solo un eseguibile, non si installla. Fpcupdeluxe installa lazarus e fpc tutto in un'unica cartella. Se tu vai nella cartella d'installazione la rimuovi ha cancellato tutto quello che fpcupdeluxe ha installato. Al massimo ti rimane qualche collegamento dal desktop.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Aprile 20, 2023, 12:33:21 pm
Ragazzi eccomi qua di nuovo.

È stata una gara dura, ci sono quasi ammattito. Alla fine mi sembra di aver capito quale è il problema. Anche se mi pare una cosa assurda. Ma ho provato e riprovato, e l'effetto è deterministico. È andata così.

Comincio dall'inizio: come mi ero proposto ho creato una macchina virtuale in Virtualbox, e ho installato Debian dalla stessa ISO della macchina fisica. Fin qui tutto liscio salvo il solito piccolo inciampo che ogni volta mi dimentico l'abracadabra per far funzionare le cartelle condivise, e ogni volta lo rifaccio in un modo diverso.

Quindi, fatti gli aggiornamenti del sistema, ho installato Lazarus con FpCupDeluxe. Tutto bene salvo il particolare che, vedendo tra le opzioni le librerie Indy, mi è venuta l'ispirazione di provare ad installarle, ma l'operazione non è riuscita e ho ottenuto solo una sbrodolata di errori. Non importa, ci sarà un tempo anche per questo ma chissà quanto più in là nel futuro, evidentemente.

Subito osservo che l'IDE si presenta diversamente: ci sono varie finestre "scollegate". Inoltre il pannello delle librerie è sparito e non trovo il modo di recuperarlo.
Se provo a compilare un progetto di applicazione, ogni volta alla prima compilazione mi appare una finestra di dialogo:

(https://images2.imgbox.com/31/8b/YQcvs4o0_o.png)

Visto che il bottone abilitato è solo uno, non ho molti dubbi su cosa scegliere, però mi piacerebbe capire che cosa mi sta chiedendo e perché.

Andiamo avanti. Dunque ho la macchina virtuale, Lazarus funzionante, che faccio? Provo ad aprire i miei progettini di prova, ma non si aprono.

Dopo aver trafficato un po' con qualche prova, noto che anche i progettini creati in questo ambiente con Lazarus nella macchina virtuale, non si aprono più. Sono daccapo.

Ma c'è dell'altro. Quando chiedo di aprire un progetto, e non si apre, Lazarus alle volte va in crash mostrando questo popup:

(https://images2.imgbox.com/42/11/SsMRYh8r_o.png)

Qualche volta, non sempre. Altrimenti non apre nulla e resta "vuoto".

Beh, ci ho passato le settimane. Nelle serate di pioggia, lanciavo la macchina virtuale, e mi mettevo a fare provette su provette perché - mi sono detto - devo trovare il bandolo, non esiste che non lo trovo.

E alla fine ho trovato la correlazione. Ora c'è da tenersi alla sedia. Questo è veramente pazzesco, ma come ho detto sopra sono sicuro, è così che succede, ho ripetuto l'esperimento molte volte.

È quando chiudo il progetto con la voce di menù "File - Close All" che il progetto viene "ucciso", annichilito, cancellato per sempre. Perciò, il fatto di aver provato la famosa utility di conversione dei progetti Delphi come avevo detto all'inizio non c'entra per nulla. Semplicemente, io lavorando in Delphi abbastanza sistematicamente quando smetto di lavorare ad un progetto e ne devo caricare un altro, uso d'abitudine l'analogo "File - Close All". E questo è del tutto innocuo, come dovrebbe essere. In Delphi posso anche aprire direttamente un altro progetto senza chiudere quello già aperto, ma se faccio "Close All" mi riporta alla finestra con l'elenco dei progetti recenti, ed più comodo così trovare e riprendere un progetto su cui lavoro di tanto in tanto. In Lazarus "Open Project" si trova sotto "Project" anziché sotto "File", e i progetti recenti si trovano anche questi sotto "Project" anziché nella finestra di "Welcome", ma questi sono dettagli di interfaccia assolutamente irrilevanti e ininfluenti. La tragedia è il fatto che una voce di menù del tutto banale possa provocare un simile disastro.

Avendo la consuetudine di usare "Close All", senza farci caso a volte lo usavo anche su Lazarus. E senza rendermi conto che così facendo distruggevo i progetti. Che cosa poi vada a fare esattamente Lazarus sui progetti "chiusi", che flag vada a scrivere e dove, non saprei proprio, io aprendo i file .lpi .lpr con l'editor di testo non vedo niente che suggerisca l'idea di un'istruzione intesa a qualificare il progetto come "annichilito". Forse il flag viene scritto in qualche altro file.

Magari questo problema è rimediabile e magari anche banalmente, ma come approccio è scoraggiante. Davvero molto scoraggiante.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Aprile 20, 2023, 12:45:30 pm
Per il "DWARF", ti viene richiesto solo la prima volta che compili un progetto: è il "tipo" di informazioni che vuoi creare per il debugger. Il Dwarf è un formato "standardizzato" per trascrivere le informazioni usate dai debugger.

Per la "Close All" sinceramente non l'ho mai usata, ma proverò appena avrò una distro Linux sotto mano.

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: xinyiman - Aprile 20, 2023, 01:04:58 pm
Il close all chiude tutte le finestre. Quando riapri i progetti .lpr se hai usato il close all devi riaprirti le form a mano. Ma non è cancella qualcosa
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Aprile 20, 2023, 08:04:50 pm
Per il "DWARF", ti viene richiesto solo la prima volta che compili un progetto: è il "tipo" di informazioni che vuoi creare per il debugger. Il Dwarf è un formato "standardizzato" per trascrivere le informazioni usate dai debugger.
Ottimo, però visto che c'è un'unica opzione valida non capisco il motivo di ripresentare ogni volta il pop-up. Infatti l'altra installazione non chiede nulla. Forse si può impostare da qualche parte un default. Comunque, questa è una noia insignificante.

Citazione da: DragoRosso
Per la "Close All" sinceramente non l'ho mai usata, ma proverò appena avrò una distro Linux sotto mano.

Ciao
Eh, si vede che non hai mai usato Delphi, altrimenti sarebbe sembrato naturale anche a te.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Aprile 20, 2023, 08:10:52 pm
Il close all chiude tutte le finestre. Quando riapri i progetti .lpr se hai usato il close all devi riaprirti le form a mano. Ma non è cancella qualcosa
Ma io ben volentieri riaprirei le form "a mano", una volta che so come fare. Però Lazarus crasha.

È chiaro peraltro che - a parte l'assurdità di avere una voce di menù dall'apparenza innocua che provoca un macello del tutto inaspettato - sono io l'imbranato che è inciampato in qualcosa di molto banale, come avevo sospettato fin da subito.

Ora me lo scrivo in un bel poster 60 x 40 che appendo di fronte alla scrivania: "MAI USARE CLOSE ALL IN LAZARUS".
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: DragoRosso - Aprile 20, 2023, 10:19:21 pm
Eh, si vede che non hai mai usato Delphi, altrimenti sarebbe sembrato naturale anche a te.

Veramente io uso ancora Delphi. Ho la licenza da diversi anni e la mantengo. Ho troppi progetti per poterlo abbandonare.

In ogni caso bisogna avere pazienza, a maggior ragione se sei sotto Linux (ma non dipende specificatamente da Lazarus secondo me). Non amo particolarmente Linux, troppe versioni, troppe librerie ......

Ciao
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: xinyiman - Aprile 21, 2023, 08:35:17 am
Il close all chiude tutte le finestre. Quando riapri i progetti .lpr se hai usato il close all devi riaprirti le form a mano. Ma non è cancella qualcosa
Ma io ben volentieri riaprirei le form "a mano", una volta che so come fare. Però Lazarus crasha.

È chiaro peraltro che - a parte l'assurdità di avere una voce di menù dall'apparenza innocua che provoca un macello del tutto inaspettato - sono io l'imbranato che è inciampato in qualcosa di molto banale, come avevo sospettato fin da subito.

Ora me lo scrivo in un bel poster 60 x 40 che appendo di fronte alla scrivania: "MAI USARE CLOSE ALL IN LAZARUS".

Quando riapri un progetto, dovresti avere la finestra "Analizzatore progetti" aperta e da li fai doppio click sul nome della form che ti interessa. Se la finestra analizzatore progetti non la vedi basta che vai su "Origetto->Analizatore progetto". Prova così e mi fai sapere.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: Minsky - Aprile 22, 2023, 07:15:22 pm
Il close all chiude tutte le finestre. Quando riapri i progetti .lpr se hai usato il close all devi riaprirti le form a mano. Ma non è cancella qualcosa
Ma io ben volentieri riaprirei le form "a mano", una volta che so come fare. Però Lazarus crasha.

È chiaro peraltro che - a parte l'assurdità di avere una voce di menù dall'apparenza innocua che provoca un macello del tutto inaspettato - sono io l'imbranato che è inciampato in qualcosa di molto banale, come avevo sospettato fin da subito.

Ora me lo scrivo in un bel poster 60 x 40 che appendo di fronte alla scrivania: "MAI USARE CLOSE ALL IN LAZARUS".

Quando riapri un progetto, dovresti avere la finestra "Analizzatore progetti" aperta e da li fai doppio click sul nome della form che ti interessa. Se la finestra analizzatore progetti non la vedi basta che vai su "Origetto->Analizatore progetto". Prova così e mi fai sapere.
Pazzesco. Era una banalità assoluta. Sì, funziona benissimo, amico mio. Ho recuperato tutti i progettini.
Dopo questa figura da tonto esemplare, mi ritiro.
Ci sarebbero alcune zone oscure da chiarire, per esempio come mai non posso disinstallare Lazarus o FpCupDeluxe che dir si voglia, e come mai l'installazione nella macchina virtuale crasha quando chiedo di aprire un progetto che ha subito un "colse all" - impedendo di fatto qualsiasi azione di recupero, etc., ma sicuramente a questo punto devo dar per scontato che siano problemi dovuti a qualche errore da parte mia.

Grazie a tutti della pazienza che mi avete riservato.
Titolo: Re:Già impantanato ancora prima di cominciare.
Inserito da: xinyiman - Aprile 23, 2023, 12:19:09 am
Non preoccuparti, non esistono figure da tonto esemplare. Ognuno fa quel che può con l'esperienza che ha. Nessun problema.