Prerequites
Hardware
Host [PC / notebook]: Jakýkoli počítač x86 / x86_64 AMD / Intel
Cíl [Raspberry Pi 4]: Malina Pi 4
Software
Hostitel: Libovolný počítač se systémem Linux (testováno Ubuntu 20.04 LTS)
Cíl: Raspberry Pi 4 Linux 32-bit OS (Raspbian Bullseye Lite testováno)
Poznámka
Na pozadí se používají křížové kompilační sady nástrojů pro Raspberry Pi z abhiTronix .
Kroky / nastavení pro cílový počítač (Raspberry Pi)
1. Začít od nuly (volitelné)
Důležitý
Pokud jste právě přinesli nový Raspberry Pi nebo chtěli začít od nuly, postupujte podle toho. V opačném případě, pokud již máte nastavení, spuštěné a připravené pro síť Raspberry Pi, přejděte ke kroku 2.
Poznámka
Tato část předpokládá, že máte alespoň 10GB SDcard pro instalaci operačního systému Raspbian (Stretch / Buster / Bullseye) a notebook / PC pro nahrávání.
Poznámka
Pokud se vybraná jednotka (nebo zařízení) liší od karty SD, dojde k poškození druhé vybrané jednotky. TAKŽE BUĎTE OPATRNÍ!
1.2 Nastavení sítě
Nyní máte svůj Raspberry Pi v provozu, je čas připojit jej k síti jedním z následujících způsobů:
- ** Pokud máte Monitor: ** Připojte jej k malinovému pi spolu s klávesnicí a myší pro navigaci a postupujte podle této příručky.
- ** Pokud nemáte Monitor: ** Postupujte podle této příručky
2. Nastavení SSH
** Pokud máte Monitor: ** Na terminálu Raspberry Pi zadejte: 'sudo raspi-config' a na terminálu by se mělo objevit menu. Chcete-li povolit SSH, přejděte na: "Možnosti rozhraní" -> "SSH" -> "Ano" a kliknutím na "OK" jej povolte. Zvolte "Dokončit" a ukončete jej.
Pokud nemáte Monitor: Po nastavení sítě, pokud nemáte monitor nebo jej ovládáte vzdáleně. Poté povolte SSH tím, že vyjmete kartu SD a připojíte ji k počítači a jednoduše vytvoříte prázdný soubor s názvem "ssh" v cestě "/ boot / parition" uvnitř karty SD. Nyní vložte zpět kartu SD do Raspberry Pi.
3. Otevřít terminál
- ** Z jiného notebooku / PC pomocí SSH: ** Chcete-li se připojit k vašemu Pi z jiného počítače, zkopírujte a vložte následující příkaz do okna terminálu, ale nahraďte "192.160.1.47" IP adresou Raspberry Pi.
Požádá o heslo, a pokud se nezmění, je výchozí ("malina"), a proto jej použije, kdykoli je požádán.ssh pi@192.168.1.47
Poznámka
Je možné nakonfigurovat Raspberry Pi tak, aby umožňoval přístup z jiného počítače, aniž byste museli zadávat heslo při každém připojení. Další podrobnosti naleznete zde.
### 4. Získání skriptůPřipojte se k vašemu Pi pomocí ssh a stáhněte si soubor 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
Soubor zip si můžete také stáhnout pomocí prohlížeče zde.
Nastavte skript qt-cross-compile-script-pi4.sh spustitelný a spusťte jej:
sudo chmod +x qt-cross-compile-script-pi4.sh
sudo ./qt-cross-compile-script-pi4.sh
Po chvíli jsou nainstalovány všechny potřebné balíčky, vytvořeny potřebné adresáře a správně nastaveny symbolické odkazy.Důležitý
Ujistěte se, že váš Raspberry Pi a tento hostitelský počítač (kde křížově kompilujete) MUSÍ být ve stejné síti.
Kroky / nastavení pro hostitelský počítač (Linux Ubuntu)
Pro testování jsme použili virtuální stroj (vmware) s čistou verzí Ubuntu 20.04 LTS.
1. Stáhnout ZIP soubor
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
Soubor zip si můžete také stáhnout pomocí prohlížeče zde.
2. Nastavte skript qt-cross-compile-script-pi4.sh spustitelný a spusťte jej
chmod +x qt-cross-compile-script-host.sh
3. Změna proměnných ve skriptu
Musíte změnit IP adresu (raspberry_ip) vašeho malinového pi ve skriptu a pokud jste změnili uživatele (raspberry_user) a heslo (raspberry_pwd) maliny.
nano qt-cross-compile-script-host.sh
4. Spuštění skriptu
sudo ./qt-cross-compile-script-host.sh
Skript provede následující akce:
- nainstalujte všechny potřebné balíčky
- vytvořit potřebné adresáře ('~/rpi-qt')
- stahování a extrahování Qt zdrojů
- patch Qt zdroje
- stáhnout a extrahovat křížový kompilátor
- rsync soubory z Raspberry Pi
- stáhnout symlinker a nastavit symlinks
- konfigurovat sestavení Qt
- make a make install Qt build
- rsync Qt binární soubory na maliny
Konečný krok pro cílový stroj (Raspberry Pi)
Aktualizace linkeru na Raspberry Pi
Zadáním následujícího příkazu aktualizujte zařízení a nechte propojovací program najít nové binární soubory QT:
echo /usr/local/qt5.15/lib | sudo tee /etc/ld.so.conf.d/qt5.15.conf
sudo ldconfig
Konfigurace Qt Creator pro křížovou kompilaci
Přečtěte si blog Konfigurace Qt-Creator na Ubuntu 20 Lts pro křížovou kompilaci pro zahrnutí kompilovaných binárních souborů (složka '~/rpi-qt/qt5.15') do Qt Creatoru.
Licence na autorská práva
Autorská práva © 2022 Interelectronix e.K.
Tento zdrojový kód projektu je licencován pod licencí GPL-3.0.
Uznání
- Tento dokument je inspirován podrobným návodem pro křížovou kompilaci nejnovějšího Qt frameworku pro Raspberry Pi. Obrovské díky @abhiTronix.
- Děkuji QT frameworku za poskytnutí zdrojových souborů