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 e ben arrivato.Grazie per il benvenuto!
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
Ciao, benvenuto.Grazie per il 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.
Benvenuto tra noi, come ti hanno già detto gli altri, probailmente hai pacioccato con l'installazione di qualche plugin e conviene reinstallare.E ancora grazie per il benvenuto!
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.
Provato ora. Se digito "startlazarus" o "lazarus" o "lazarus_fpcupdeluxe" (questo è il nome del programma nel menù) da terminale ottengo solo "command not found".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".
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:~$
Ho installato con FPCupDeluxe, seguendo proprio il tutorial alla pagina indicata sopra da xinyiman.
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 provato ad installare Lazarus in una macchina WSL tramite il "curl" indicato in un precedente post.No, non è un programma generato da una versione recente, era la XE.
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
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.
@bonmario ..... non hai l'ultima versione stabile 2.2.4 .... ;D ;D ;D
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.
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.
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
A naso, però posso sbagliare, sembra che hai problemi con il GTK.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".
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
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.
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.
Grazie delle dritte, purtroppo qui c'è qualcosa che non quadra.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
Ottima idea, e grazie in anticipo per la disponibilità.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
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
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 !!!
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.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
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...
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
Riepilogo la vicenda.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.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).
[...]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.
- 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.
Appena ho una finestra di tempo mi ci applico.
A presto e grazie di cuore.
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.
Per la "Close All" sinceramente non l'ho mai usata, ma proverò appena avrò una distro Linux sotto mano.Eh, si vede che non hai mai usato Delphi, altrimenti sarebbe sembrato naturale anche a te.
Ciao
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 qualcosaMa io ben volentieri riaprirei le form "a mano", una volta che so come fare. Però Lazarus crasha.
Eh, si vede che non hai mai usato Delphi, altrimenti sarebbe sembrato naturale anche a te.
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 qualcosaMa 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".
Pazzesco. Era una banalità assoluta. Sì, funziona benissimo, amico mio. Ho recuperato tutti i progettini.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 qualcosaMa 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.