Aan de slag met de TI MSP430-gcc en de MSP430 Launchpad op Linux (2 / 5 stap)

Stap 2: Compileren de toolchain

Compileren van gcc duurt lang, dus ik let's get het begon en terwijl het compileren is kun je de uitleg voor alles hieronder lezen. Dit is de veronderstelling dat gcc en maak al op uw systeem zijn geïnstalleerd. Zoniet moet u deze installeren.

CD ~/Downloads

sudo apt-get install texinfo verwachten libx11-dev g ++ flex bison libncurses5-dev

sudo mkdir /opt/msp430-toolchain mkdir bouwen cd bouwen

export PREFIX = / opt/msp430-toolchain

exporteren van TARGET = msp430-geen-elf

export PATH = $PREFIX/bin: $PATH

.. /sources/tools/configure--target = $TARGET--prefix = "$PREFIX"--programma-prefix = msp430---enable-languages = c--disable-nls

Controleer alle

Nu zijn uitgevoerd, hier is de verdeling van wat je net deed.

sudo apt-get install texinfo verwachten libx11-dev g ++ flex bison libncurses5-dev

Hier zijn we het installeren van pakketten die nodig zijn voor het compileren van gcc

  • texinfo: hulpprogramma om te helpen met het maken van documentatie in verschillende indelingen
  • verwachten: programma dat met andere programma's interactief worden gebruikt in scripts praat
  • libx11-dev: X11 windowing systeem ontwikkelingspakket
  • g ++: gnu C++ compiler
  • Flex: snelle lexicale analyse generator
  • Bison: parser generator
  • libncurses5-dev: scherm verwerking en optimalisatie pakket, in feite een terminal upgrade

Zoals hierboven vermeld, als u momenteel niet beschikt over gcc en al is geïnstalleerd maken, moet u ze toevoegen aan deze lijst.

sudo mkdir /opt/msp430-toolchain

Dit is de directory waarin de toolchain zal worden geïnstalleerd. Persoonlijk zou ik graag mijn toolchains onder de map "/ opt" installeren. Deze map is eigendom van root en andere gebruikers alleen kunnen lezen en uitvoeren zodat telkens als die u op deze map installeren u als root doen moet.

mkdir te bouwen

CD bouwen

Vervolgens hebben we een build-map maken. Een zeer belangrijke opmerking over het compileren van gcc is dat je niet kan bouwen in de bronmap. Als u probeert, bent u zeer waarschijnlijk om bouwfouten.

export PREFIX = / opt/msp430-toolchain

exporteren van TARGET = msp430-geen-elf

export PATH = $PREFIX/bin: $PATH

Vóór de bouw van gcc, moeten sommige variabelen van het milieu worden ingesteld. We willen niet dat ze als systeem breed of permanent dus we hen alleen in de context van onze shell instellen zullen. Hiervoor gebruiken we de opdracht exporteren. De omgevingsvariabelen die gedefinieerd zijn:

  • PREFIX-de map waar uw cross-compiler wordt geïnstalleerd
  • DOEL-de doelarchitectuur in de indeling-- of iets dergelijks (zijn niet echt goed gedefinieerd). In ons geval is de boog msp430, doel-os is geen omdat het blote metaal ontwikkeling zal zijn, en de output elf formaat is
  • PAD-het systeempad, al gedefinieerd maar wij moeten locatie van de binaire bestanden die zullen we bouwen aan het toevoegen

.. /sources/tools/configure--target = $TARGET--prefix = "$PREFIX"--programma-prefix = msp430---enable-languages = c--disable-nls

Zoals met de meeste gnu programma's, is de build omgeving gebaseerd op automake/autoconf. Deze hulpprogramma's kunnen vrij ingewikkeld om te begrijpen en de parameters die u hebt doorgeven aan hen zijn soms onduidelijk en slecht gedocumenteerd. In principe is dit wat moeten gebeuren:

  • Het configure script passeren de vereiste argumenten die worden gedefinieerd door het configuratiebestand voor een bepaald programma uitvoeren
  • Het script analyseert uw systeem voor verschillende afhankelijkheden en van de informatie die het verzamelt, is het kundig voor genereren van makefiles, configuratiebestanden en soms headerbestanden die compatibel is met uw systeem. Als u niet bekend bent met de makefiles, zal Maak je geen zorgen over het voor nu, ik een les gewijd aan hen. Soms kunnen niet afhankelijkheden opgelost worden in dat geval mislukt de configuratie (of bouwen)
  • Compileren van de code
  • Installeer het programma

In het geval van gcc, het configure script accepteert vele argumenten maar slechts een paar zijn nodig in de meeste gevallen. Het doel en de prefix-argument zijn zoals hierboven beschreven in de sectie van de variabelen milieu. De programma-prefix voegt simpelweg een voorvoegsel aan alle binaire bestanden, dus bijvoorbeeld gcc wordt msp430-gcc. Dit is handig als u wilt dat een makefile die dezelfde code voor vele architecturen kan bouwen. Bijvoorbeeld, als ik compileren main.c voor msp430 zowel arm wilde, ik kon mijn compiler als definiëren $(target)-gcc en vervolgens configureren met target = msp430 gebruiken msp430-gcc te configureren met doel = arm voor het gebruik van de arm-gcc. De vlag van disable-nls vertelt de build uitschakelen Native Language Support (NLS), die in feite betekent dat gcc uitgangen alleen diagnostiek in het Engels. Tot slot, vertelt inschakelen-talen het build systeem te compileren van alleen de opgegeven talen. Alleen C is ingeschakeld, want dat is de taal die we zullen gebruiken. Als u geïnteresseerd in de vele andere opties voor gcc compilatie bent u kunt alles lezen over hen hier.

Een laatste ding, als u wilt volledig schoon uw build directory of herbouwen van krabben, de "make distclean" commando wordt verondersteld om dit te doen voor u, maar in mijn ervaring is het vaak niet effectief. Zijn gemakkelijker en veiliger om gewoon verwijderen van de hele directory bouwen en start opnieuw.

Gefinisht de compilatie? Als niet een koffie pauze...

Nu dat haar gedaan, hebt u om het te installeren. Aangezien / opt wordt bezeten door root, heeft de opdracht install uitgevoerd worden met sudo.

sudo maakt installeren

Hiermee kopieert u alle vereiste bestanden uit de build-map naar de map die is opgegeven met de omgevingsvariabele VOORVOEGSEL.

Gerelateerde Artikelen

Hoe aan de slag met Eclipse en AVR

Hoe aan de slag met Eclipse en AVR

AVR's programmeren is leuk, maar soms maken de fabrikanten ontwikkelomgevingen code onderhoud een karwei. Als je op zoek naar een vrije, cross-platform, hoge kwaliteit stuk van software voor het programmeren van AVR's Eclipse is een goede keuze.Verpl
Aan de slag met ubuntu en de AVR draak

Aan de slag met ubuntu en de AVR draak

hier is wat ik deed om te beginnen met de AVR Dragon te programma ATMEGA8 microcontrollers met behulp van ubuntu (dit is gericht op beginners, ikzelf ben ook een beginner, wordt dus geen verbeteringen van meer ervaren gebruikers worden zeer gewaardee
Aan de slag met Phidgets op de Raspberry Pi

Aan de slag met Phidgets op de Raspberry Pi

Dit instructable is een aanpassing van een van onze blog posts .Voordat u begint, zult u willen heb een paar dingen op zijn plaats. Hebt u nodig:Een goed functionerende Raspberry Pi (uiteraard).Een afzonderlijk powered USB-hub, aangezien de Raspberry
DIY-aan de slag met DRONES (met externe kalibratie)

DIY-aan de slag met DRONES (met externe kalibratie)

Wat zijn ze en wie hen gebruikt? Sommigen noemen hen drones, sommige gelden het label "quadcopters", al hebben ze een aantal rotoren of zelfs vliegtuigen worden - een afkorting voor hen "onbemande antenne systemen" (UAS). Ik liever noe
Aan de slag met de ESP8266 met "AT-opdrachten" Via Arduino

Aan de slag met de ESP8266 met "AT-opdrachten" Via Arduino

ESP8266 Wifi Module is een geïntegreerde chip ontworpen voor communicatie met de wereld van het internet via Wifi-radiosignalen. Het is de verbinding tussen een project en het internet. Het heeft aan boord en geheugen waarmee het worden geïntegreerd
Aan de slag met ESP8266 met op opdrachten, NodeMCU of het Arduino (ESP-12E)

Aan de slag met ESP8266 met op opdrachten, NodeMCU of het Arduino (ESP-12E)

Dit Instructable zal u tonen de stappen die nodig zijn om te beginnen met de ESP8266 met behulp van een fantastische kleine ontwikkel bord voor de ESP-12E-module. Het bord bevat alles wat u nodig met inbegrip van een USB naar seriële adapter, oppervl
Aan de slag met IoT met behulp van het Particle Core

Aan de slag met IoT met behulp van het Particle Core

IoT is een echt leuk om te experimenteren, terwijl ze plezier het is ook zeer macht volledig. Het kan krijgen een breed scala van apparaten aansluiten, zoals bijvoorbeeld een koffiezetapparaat dat kunt tweet wanneer de koffie wordt gedaan of een auto
AAN DE SLAG MET DOMOTICASYSTEEM.

AAN DE SLAG MET DOMOTICASYSTEEM.

WAARSCHUWING: DIT PROJECT ZAL OORZAKEN OPWINDING DIE MOGELIJK SCHADELIJK VOOR DE GEZONDHEID.Dus hier ben ik met een ander leuk Instructables controle geleid door stem, met behulp van Arduino via Bluetooth-module (HC 05). Zodat deze Instructables kan
Aan de slag met LinkIt One - knippert een LED

Aan de slag met LinkIt One - knippert een LED

Hoi!Bent u vaak verward door de hele wereld nieuwe borden en tech die om de paar maanden houden komen?Bent u vaak op zoek op google gewoon zin te maken van dit alles?Bent u bereid om echt geweldig projecten te maken, maar weet niet waar te beginnen?B
Aan de slag met de interactie onderdelen Kit deel 1

Aan de slag met de interactie onderdelen Kit deel 1

In deze tutorial zal ik laten zien hoe met behulp van een potentiometer (potmeter) controle van de helderheid van een LED. Ook heb ik een schakelaar van de tilt (wordt later beschreven) in serie met de LED, zodat wanneer het breadboard rechtop het op
Aan de slag met Ubuntu Linux

Aan de slag met Ubuntu Linux

Linux is het besturingssysteem (OS) van keuze voor de computer savvy sinds haar oprichting, maar in de afgelopen paar jaar met de release van kleine linux gebaseerde fysieke computing platforms zoals de Raspberry Pi, BeagleBone en Arduino Yun (onder
Aan de slag met de ESP8266 ESP-12

Aan de slag met de ESP8266 ESP-12

Dit instructable zal betrekking hebben op de basisstappen die u volgen moet om aan de slag met de ESP8266 ESP-12.Veel van deze inhoud er al uit, maar ik had een harde tijd om alles op zijn plaats, en de verschillende tutorials kunnen leiden tot veel
Aan de slag met pcDuino

Aan de slag met pcDuino

Na het plezier met de pcDuino, realiseerde ik dat mij konden wekken een stelletje tutorials te gebruiken. Dus dat is gewoon wat ik ga doen, dus laat mij uit te leggen wat is een pcduino en hoe u kunt instellen voor de eerste keer start.Wat is een pcD
Aan de slag met LinkIt One - LEDs

Aan de slag met LinkIt One - LEDs

Ik heb onlangs een LinkIt één bord, die het is een geweldig alternatief voor een Arduino met een heleboel functies verpakt in een klein pakket. Het heeft een ingebouwde WIFI, GPS, Bluetooth, GSM, Micro SD kaart slot en een hoofdtelefoonaansluiting va