Software incorporato - Qt compila gli script di installazione incrociati per Raspberry Pi 4 uno screenshot di un programma per computer

Configurazione compilazione incrociata Qt

script per Raspberry Pi 4

Prerequisiti

Host hardware

[PC/Laptop]: qualsiasi macchina AMD/Intel x86/x86_64
Target [Raspberry Pi 4]: Raspberry Pi 4

Host

software: qualsiasi macchina Linux (Ubuntu 20.04 LTS testato)
Target: Raspberry Pi 4 Linux 32-bit OS (testato Raspbian Bullseye Lite)

Nota:

Sullo sfondo vengono utilizzate le toolchain di compilazione incrociata per Raspberry Pi di di abhiTronix.

Altri

Requisiti di archiviazione e di tempo: la compilazione della directory richiede circa ~10 GB di spazio e circa 2-5 ore per essere completata (in base alle dipendenze e alle specifiche della macchina host).
Rete: il computer di destinazione (Raspberry Pi) e il computer host (in cui si esegue la compilazione incrociata) DEVONO entrambi avere accesso a Internet e DEVONO essere sulla STESSA rete per seguire queste istruzioni.

Passi/Impostazioni per la macchina di destinazione (Raspberry Pi)

1. Avvio da zero (opzionale)

Importante

Se hai appena portato un nuovo Raspberry Pi o volevi ricominciare da zero, segui la procedura. Altrimenti, se hai già configurato Raspberry Pi, è in esecuzione e pronto per la rete, vai al passaggio 2.

Nota:

Questa sezione presuppone che tu abbia almeno una scheda SD da 10 GB per l'installazione del sistema operativo Raspbian (Stretch/Buster/Bullseye) e un computer portatile/PC per caricarlo.

1.1. Scarica i software e prepara la scheda SD

  • Scarica l'ultima versione di Raspbian (Bullseye) da qui sul tuo laptop/pc.- Avrai bisogno di un masterizzatore di immagini per scrivere il sistema operativo scaricato nella scheda SD (scheda micro SD nel nostro caso). Puoi usare Balena Etcher.- Inserisci la scheda SD nel laptop/pc ed esegui il programma di scrittura immagini. Una volta aperto, sfoglia e seleziona il file di immagine Raspbian scaricato. Seleziona il dispositivo corretto, ovvero l'unità che rappresenta la scheda SD.

Nota:

Se l'unità (o il dispositivo) selezionato è diverso dalla scheda SD, l'altra unità selezionata verrà danneggiata. PERCIÒ, PRESTA ATTENZIONE!

- Una volta completata la scrittura, espelli la scheda SD e inseriscila nel Raspberry Pi e accendilo. Dovrebbe iniziare ad avviarsi. - Ricorda che dopo l'avvio del Pi, potrebbero verificarsi situazioni in cui verranno richieste le credenziali utente come il "nome utente" e la password. Raspberry Pi viene fornito con un nome utente predefinito `pi' e password `raspberry` e quindi utilizzalo ogni volta che viene richiesto.

1.2 Configurazione della rete

Ora che hai il tuo Raspberry Pi attivo e funzionante, è il momento di connetterlo alla rete con uno dei seguenti modi:

2. Configura SSH

  • Se disponi di Monitor: Sul terminale Raspberry Pi, digita: sudo raspi-config e il menu dovrebbe apparire sul terminale. Per abilitare SSH, vai su: Opzioni interfaccia -> SSH -> , e fai clic su OK per abilitarlo. Scegli Fine al termine ed esci.

  • Se non disponi di Monitor: Dopo aver configurato la rete, se non dispone di Monitor o se lo utilizzi in remoto. Quindi abilita SSH semplicemente estraendo la scheda SD e agganciala al computer, e crea semplicemente un file vuoto chiamato "ssh" nel percorso "/boot/parition" all'interno della scheda SD. Ora reinserisci la scheda SD nel Raspberry Pi.

3. Apri terminale

  • Da un altro laptop/PC che utilizza SSH: Per connettersi al tuo Pi da un computer diverso, copia e incolla il seguente comando nella finestra del terminale ma sostituisci 192.160.1.47 con l'indirizzo IP del Raspberry Pi.
ssh pi@192.168.1.47 

Richiede la password e, se non viene modificata, è predefinita (raspberry), quindi utilizzala ogni volta che viene richiesta.

Nota:

È possibile configurare il Raspberry Pi per consentire l'accesso da un altro computer senza dover fornire una password ogni volta che ci si connette. Per maggiori dettagli, vedi qui.

4. Ottieni script

Connettiti al tuo Pi con ssh e scarica il file zip:

ssh pi@192.168.1.47

wget https://www.interelectronix.com/sites/default/files/scripts/qt-cross-compile-rpi4.zip
unzip qt-cross-compile-rpi4.zip
cd qt-cross-compile-rpi4

È anche possibile scaricare il file zip tramite browser da qui. Rendi eseguibile lo script qt-cross-compile-script-pi4.sh ed eseguilo:

sudo chmod +x qt-cross-compile-script-pi4.sh
sudo ./qt-cross-compile-script-pi4.sh

Dopo aver installato tutti i pacchetti necessari, vengono create le directory necessarie e i collegamenti simbolici vengono impostati correttamente.

Importante

Assicurati che il Raspberry Pi e questo computer host (in cui esegui la compilazione incrociata) SIANO sulla STESSA rete.

Passi/Impostazioni per la macchina host (Linux Ubuntu)

Per il test, abbiamo utilizzato una macchina virtuale (vmware) con una versione Ubuntu 20.04 LTS pulita.

1. Scarica file ZIP

wget https://www.interelectronix.com/sites/default/files/scripts/qt-cross-compile-rpi4.zip
unzip qt-cross-compile-rpi4.zip
cd qt-cross-compile-rpi4

È anche possibile scaricare il file zip tramite browser da qui.

2. Rendi eseguibile lo script qt-cross-compile-script-pi4.sh ed eseguilo

chmod +x qt-cross-compile-script-host.sh

3. Modifica le variabili nello script

È necessario modificare l'indirizzo IP (raspberry_ip) del tuo raspberry pi nello script e se hai modificato l'utente (raspberry_user) e la password (raspberry_pwd) del raspberry.

nano qt-cross-compile-script-host.sh

4. Esegui lo script

sudo ./qt-cross-compile-script-host.sh

Lo script esegue le seguenti azioni:

  • installa tutti i pacchetti necessari
  • crea le directory necessarie (~/rpi-qt)
  • scarica ed estrai le sorgenti Qt
  • patch sorgenti Qt
  • scarica ed estrai cross compiler
  • rsync file da raspberry pi
  • scarica il link simbolico e imposta i link simbolici
  • configura Qt build
  • crea e fai installare Qt build
  • binari Qt rsync a raspberry

Passaggio finale per la macchina di destinazione (Raspberry Pi)

Aggiorna linker su Raspberry Pi

Immetti il seguente comando per aggiornare il dispositivo consentendo al linker di trovare i nuovi file binari QT:

echo /usr/local/qt5.15/lib | sudo tee /etc/ld.so.conf.d/qt5.15.conf
sudo ldconfig

Configura Qt Creator per la compilazione incrociata

Leggi il blog Configuring Qt-Creator on Ubuntu 20 Lts for cross-compilation per includere i binari compilati (cartella ~/rpi-qt/qt5.15) in Qt Creator.

Licenza sul diritto d'autore

Copyright © 2022 Interelectronix e.K.
Questo codice sorgente del Progetto è concesso in licenza sotto la licenza **GPL-3.0 * *.

Riconoscimenti