Akce

Překlad OpenTx ze zdrojových souborů: Porovnání verzí

Z Wiki OpenTX

(Kompilace openTx na linuxu)
 
(Není zobrazeno 47 mezilehlých verzí od 2 dalších uživatelů.)
Řádek 1: Řádek 1:
 +
<div style="max-width:780px; margin-left:0em;margin-right:auto;text-align:justify">
 
Pokud potřebujete jinou verzi nebo kombinaci voleb, než je k dispozici připravená ke stažení pomocí Companion9X, je nutné vytvořit si soubor pro nahrání firmware překladem a sestavením ze zdrojových kódů.
 
Pokud potřebujete jinou verzi nebo kombinaci voleb, než je k dispozici připravená ke stažení pomocí Companion9X, je nutné vytvořit si soubor pro nahrání firmware překladem a sestavením ze zdrojových kódů.
  
 
Není to sice nijak složité, ale předpokládá se jistá základní úroveň znalostí a dovedností pro práci s příkazovým řádkem a programátorským textovým editorem..
 
Není to sice nijak složité, ale předpokládá se jistá základní úroveň znalostí a dovedností pro práci s příkazovým řádkem a programátorským textovým editorem..
  
 +
'''Mnoho užitečných a aktuálních informací naleznete ve [https://github.com/opentx/opentx/wiki vývojářské wiki projektu OpenTx].'''
 +
 +
=='''Windows'''==
 +
 +
Postup pro Windows je popsán ve [https://github.com/opentx/opentx/wiki/OpenTX-Windows-Build-Instructions '''vývojářské wiki'''] projektu OpenTx.
 +
 +
=='''Linux'''==
 +
 +
====Námi osobně odzkoušený postup====
 +
 +
[[Image:Ubuntu_compilation_universe_repo.png|náhled]]
 
Tento postup je pro Ubuntu, ale obdobně bude jistě fungovat i na ostatních distribucích linuxu.
 
Tento postup je pro Ubuntu, ale obdobně bude jistě fungovat i na ostatních distribucích linuxu.
 
  
 
* V Ubuntu je třeba mít povolené repozitáře "universe"
 
* V Ubuntu je třeba mít povolené repozitáře "universe"
 +
<br />
 
* Pro instalaci balíčků použiji příkazový řádek, ale lze použít i některý z grafických instalátorů.
 
* Pro instalaci balíčků použiji příkazový řádek, ale lze použít i některý z grafických instalátorů.
 
<br />
 
<br />
Řádek 13: Řádek 25:
 
<br />
 
<br />
 
:Nainstalujeme balíčky potřebné pro kompilaci firmware
 
:Nainstalujeme balíčky potřebné pro kompilaci firmware
  sudo apt-get install subversion gcc-avr avr-libc python-qt4 g++
+
  sudo apt-get install git gcc-avr avr-libc python-qt4 g++
 +
:Tyto balíčky nám dovolí kompilovat firmware pro AVR platformu, to znamená pro klasickou 9X a 9XR. Pokud budeme chtít kompilovat pro ARM platformu (Taranis, Sky9X) bude třeba ještě balíček gcc-arm-none-eabi , ten ale není v běžných repozitářích a je třeba stáhnout z https://launchpad.net/gcc-arm-embedded/+download , rozbalit do složky /usr/local/gcc-arm-none-eabi-4_7-2014q2 a nalinkovat binárky
 +
ln -s /usr/local/gcc-arm-none-eabi-4_7-2014q2/bin/* /usr/local/bin/
 +
:'''!! Nepoužívejte verzi 4.8 a vyšší, výsledný kód nefunguje správně !!'''
 +
:''' Použijte verzi [https://launchpad.net/gcc-arm-embedded/4.7/4.7-2014-q2-update/+download/gcc-arm-none-eabi-4_7-2014q2-20140408-linux.tar.bz2 4.7-2014q2]'''
 
<br />
 
<br />
 
:Pokud budeme používat simulátor firmware, je třeba doinstalovat i následující.
 
:Pokud budeme používat simulátor firmware, je třeba doinstalovat i následující.
Řádek 20: Řádek 36:
 
:Vytvoříme si v domovském adresáři složku pro zdrojové kódy firmware
 
:Vytvoříme si v domovském adresáři složku pro zdrojové kódy firmware
 
  mkdir ~/kompilace
 
  mkdir ~/kompilace
 +
cd ~/kompilace
 +
<br />
 +
:Stáhneme zdrojové soubory z github
 +
git clone https://github.com/opentx/opentx.git
 +
cd ~/kompilace/opentx/radio/src
 
<br />
 
<br />
:Stáhneme zdrojové soubory nejnovější verze ( Pokud požadujete přímo verzi rXXXX uvedete ji za .../svn/trunk/'''@rXXXX''' )
+
Nyní máme kopii zdrojových souborů OpenTX, systém git obsahuje všechny dostupné verze.
  svn checkout <nowiki>http://opentx.googlecode.com/svn/trunk/ ~/kompilace</nowiki>
+
Seznam verzí, takzvaných tagů zobrazíte pomocí
  cd ~/kompilace/src
+
git tag -l
 +
Mimo těchto tagů jsou ještě pracovní větve firmware, nejzajímavější jsou zejména<br />
 +
master - to je poslední vydaná verze plus případné ještě nevydané bugfixy<br />
 +
next - toto je pracovní verze příští větší aktualizace<br />
 +
 
 +
Mezi vybranými tagy/větvemi git přechází pomocí
 +
  git checkout tags/2.0.11  - připraví zdrojové soubory verze 2.0.11
 +
  git checkout next  - připraví zdrojové soubory poslední vývojové verze
 
<br />
 
<br />
 
:Nyní je třeba konfigurovat volby firmware tak jak to dělá companion9x, lze to provést pomocí parametrů na příkazové řádce
 
:Nyní je třeba konfigurovat volby firmware tak jak to dělá companion9x, lze to provést pomocí parametrů na příkazové řádce
  make all PCB=9X EXT=FRSKY TRANSLATIONS=CZ
+
  make PCB=9X EXT=FRSKY TRANSLATIONS=CZ
:nebo editací souboru Makefile ve složce ~/kompilace/src , potom už parametry nemusíme uvádět na příkazovou řádku a použijeme jen
+
:nebo editací souboru Makefile ve složce ~/kompilace/radio/src , potom už parametry nemusíme uvádět na příkazovou řádku a použijeme jen
 
  make all
 
  make all
 
<br />
 
<br />
:Nyní by již měla být ve složce ~/kompilace/src vaše vlastní binárka opentx.bin
+
:Nyní by již měla být ve složce ~/kompilace/radio/src vaše vlastní binárka opentx.hex pro AVR(9X, 9XR), nebo opentx.bin pro ARM(Taranis, Sky9X)
 
<br />
 
<br />
:Zdrojový kód openTx obsahuje i simulátor, pomocí něhož lze spustit a testovat konkrétní verzi firmware přímo na PC.
+
 
 +
*Zdrojový kód openTx obsahuje i simulátor, pomocí něhož lze spustit a testovat konkrétní verzi firmware přímo na PC.
 +
[[Soubor:Ubuntu compilation simu running.png|náhled]]
 
:Jeho kompilaci provedeme pomocí
 
:Jeho kompilaci provedeme pomocí
 
  make simu
 
  make simu
Řádek 38: Řádek 68:
 
  ./simu
 
  ./simu
  
==Windows==
+
----
 +
 
 +
====[http://www.rcmania.cz/viewtopic.php?f=43&t=50060&p=878133#p870957 Původní návod na zprovoznění překladu na RCManii]====
 +
----
 +
 
 +
====Další návody na překlad====
 +
 
 +
*https://code.google.com/p/opentx/wiki/LinuxBuildInstructions - na webu OpenTx (anglicky)
 +
*https://github.com/opentx/opentx/wiki/OpenTX-Linux-Build-Instructions
 +
 
 +
 
 +
----
 +
 
 +
=='''Ovládání simulátoru ''simu'''''==
 +
 
 +
# Uložení snímku obrazovky - '''s'''
 +
# Přepínání přepínačů
 +
#* '''1''' - THR
 +
#* '''2''' - RUD
 +
#* '''3''' - ELE
 +
#* '''4''' - ID0->ID1->ID2
 +
#* '''5''' - ID2->ID1->ID0
 +
#* '''6''' - AIL
 +
#* '''7''' - GEA
 +
#* '''7''' - TRN
 +
# Trimy
 +
#* '''F1''' -
 +
#* '''F2''' -
 +
#* '''F3''' -
 +
#* '''F4''' -
 +
#* '''F5''' -
 +
#* '''F6''' -
 +
#* '''F7''' -
 +
#* '''F8''' -
 +
# [EXIT] - '''<-''' (Backspace)
 +
# [MENU] - '''Enter'''
 +
 
 +
</div>

Aktuální verze z 12. 9. 2020, 15:14

Pokud potřebujete jinou verzi nebo kombinaci voleb, než je k dispozici připravená ke stažení pomocí Companion9X, je nutné vytvořit si soubor pro nahrání firmware překladem a sestavením ze zdrojových kódů.

Není to sice nijak složité, ale předpokládá se jistá základní úroveň znalostí a dovedností pro práci s příkazovým řádkem a programátorským textovým editorem..

Mnoho užitečných a aktuálních informací naleznete ve vývojářské wiki projektu OpenTx.

Windows

Postup pro Windows je popsán ve vývojářské wiki projektu OpenTx.

Linux

Námi osobně odzkoušený postup

Ubuntu compilation universe repo.png

Tento postup je pro Ubuntu, ale obdobně bude jistě fungovat i na ostatních distribucích linuxu.

  • V Ubuntu je třeba mít povolené repozitáře "universe"


  • Pro instalaci balíčků použiji příkazový řádek, ale lze použít i některý z grafických instalátorů.


Aktualizujeme zdroje softwaru
sudo apt-get update


Nainstalujeme balíčky potřebné pro kompilaci firmware
sudo apt-get install git gcc-avr avr-libc python-qt4 g++
Tyto balíčky nám dovolí kompilovat firmware pro AVR platformu, to znamená pro klasickou 9X a 9XR. Pokud budeme chtít kompilovat pro ARM platformu (Taranis, Sky9X) bude třeba ještě balíček gcc-arm-none-eabi , ten ale není v běžných repozitářích a je třeba stáhnout z https://launchpad.net/gcc-arm-embedded/+download , rozbalit do složky /usr/local/gcc-arm-none-eabi-4_7-2014q2 a nalinkovat binárky
ln -s /usr/local/gcc-arm-none-eabi-4_7-2014q2/bin/* /usr/local/bin/
!! Nepoužívejte verzi 4.8 a vyšší, výsledný kód nefunguje správně !!
Použijte verzi 4.7-2014q2


Pokud budeme používat simulátor firmware, je třeba doinstalovat i následující.
sudo apt-get install libfox-1.6-0 libfox-1.6-dev


Vytvoříme si v domovském adresáři složku pro zdrojové kódy firmware
mkdir ~/kompilace
cd ~/kompilace


Stáhneme zdrojové soubory z github
git clone https://github.com/opentx/opentx.git
cd ~/kompilace/opentx/radio/src


Nyní máme kopii zdrojových souborů OpenTX, systém git obsahuje všechny dostupné verze. Seznam verzí, takzvaných tagů zobrazíte pomocí

git tag -l

Mimo těchto tagů jsou ještě pracovní větve firmware, nejzajímavější jsou zejména
master - to je poslední vydaná verze plus případné ještě nevydané bugfixy
next - toto je pracovní verze příští větší aktualizace

Mezi vybranými tagy/větvemi git přechází pomocí

git checkout tags/2.0.11  - připraví zdrojové soubory verze 2.0.11
git checkout next  - připraví zdrojové soubory poslední vývojové verze


Nyní je třeba konfigurovat volby firmware tak jak to dělá companion9x, lze to provést pomocí parametrů na příkazové řádce
make PCB=9X EXT=FRSKY TRANSLATIONS=CZ
nebo editací souboru Makefile ve složce ~/kompilace/radio/src , potom už parametry nemusíme uvádět na příkazovou řádku a použijeme jen
make all


Nyní by již měla být ve složce ~/kompilace/radio/src vaše vlastní binárka opentx.hex pro AVR(9X, 9XR), nebo opentx.bin pro ARM(Taranis, Sky9X)


  • Zdrojový kód openTx obsahuje i simulátor, pomocí něhož lze spustit a testovat konkrétní verzi firmware přímo na PC.
Ubuntu compilation simu running.png
Jeho kompilaci provedeme pomocí
make simu
Spuštění simulátoru potom
./simu

Původní návod na zprovoznění překladu na RCManii


Další návody na překlad



Ovládání simulátoru simu

  1. Uložení snímku obrazovky - s
  2. Přepínání přepínačů
    • 1 - THR
    • 2 - RUD
    • 3 - ELE
    • 4 - ID0->ID1->ID2
    • 5 - ID2->ID1->ID0
    • 6 - AIL
    • 7 - GEA
    • 7 - TRN
  3. Trimy
    • F1 -
    • F2 -
    • F3 -
    • F4 -
    • F5 -
    • F6 -
    • F7 -
    • F8 -
  4. [EXIT] - <- (Backspace)
  5. [MENU] - Enter