Onko olemassa avoimen lähdekoodin kääntäjää Arduino Sketch -koodeille?

Työskentelen verkkosovelluksella ohjelmoimaan joitain nodeMCU-laitteita, jotka vilkaistiin arduinoOTA-kirjaston kanssa.

http://esp8266.github.io/Arduino/versions/2.0.0/doc/ota_updates/ota_updates.html

Yritin esimerkkiä ja Arduino IDE: stä kootun binaaritiedoston OTA-lähetys toimii.

Sanotaan, että verkkosovellukseni sallii käyttäjän koodata Sketchissä, onko olemassa avoimen lähdekoodin palvelin- tai asiakaspuolen kääntäjää, joka voi kääntää Sketch-koodin roskatiedostoon?

Kommentit

  • ota käyttöön monipuolinen konsolilähtö Arduino IDE: ssä ja näet kaikki suoritetut komennot käännettäväksi ja linkitettäväksi. rakennustyökalu on ulkoinen ja se on avoimen lähdekoodin
  • katso esimerkiksi Sloeber, Arduino Eclipse -laajennus, kuinka se käyttää Arduino-työkaluketjua ja ydinpaketteja ilman Arduino IDE: tä
  • @Juraj Kirjoita tämä vastauksena tai anna URL-osoite tms. verkossa, jos tiedät sellaisen.
  • AVC GCC: tä käytetään ja se on avoimen lähdekoodin gcc.gnu.org

Vastaa

Arduino IDE käyttää ulkoisia työkaluja hex- tai bin-tiedoston luomiseen. Ensin arduino builder käsittelee projektin ino-tiedostot cpp-tiedostoksi. Sitten arduino-rakentaja kutsuu MCU-arkkitehtuurin työkaluketjun – kääntäjän ja linkin. Esimerkiksi AVR-työkalut malleille 328p tai 2560; ARM-työkaluketju SAMD: lta; xtensa-työkalut Espressif-siruille.

Uusi on Arduino CLI , joka keskittyy Arduinon käyttöön komentorivillä.

Tha Arduino Builder, Arduino CLI ja esp8266 Arduino core ovat avointa lähdekoodia. Extensa-työkalut ja Espressif SDK eivät ole avointa lähdekoodia, mutta ovat ilmaisia.

Vastaa

Kokeile PlatformIO: https://platformio.org

Avaa lähdekoodin ja alustan.

Kommentit

  • Erinomainen vastaus johonkin toiseen kysymykseen 🙂

Vastaa

Katsokaa tässä https://github.com/arduino/Arduino/wiki/Build-Process prosessin ymmärtämiseksi.

Itse asiassa Arduino-koodi ei ole ”C” tai C ++ ”100%: lla. Et voi kääntää suoraa, koska jotkut tiedot puuttuvat. Siksi, kun ”käännät” IDE: n kanssa, se kopioi tiedostot temp-kansioon, lisää joitain rivejä opinnäytetiedostojen alkuun ja kutsuu sitten perus- ja tunnettua avr-tiedostoa. -gcc. Jos sinulla on oma palvelin, sinun täytyy vain etsiä avr-gcc-pakettia käyttöjärjestelmän mukaan. Esimerkiksi Debian: https://packages.debian.org/stretch/gcc-avr

Sitten tai lähetät suoraan koodin, jota avr-gcc odottaa, tai syötät koodiin samat muutokset, joita IDE tekee ennen koodin lähettämistä GCC: lle.

Toivottavasti tätä apua

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *