Instalarea tulchayn pentru a lucra cu arm7

presetata

Deoarece sună amuzant, dar, înainte de a începe instalarea instrumentului, trebuie să efectuăm câteva acțiuni privind pregătirea preliminară a computerului (mai precis - sistemul de operare). Cu alte cuvinte, trebuie să instalăm toate componentele necesare sistemului, astfel încât să putem instala instrumentul.







0. Trebuie să instalați Debian pe comp. Desigur, dacă aveți deja instalat, atunci nu trebuie să faceți nimic. În general, ultima distribuție stabilă Debian - Squeeze 6.0.6 este distribuită pe 8 discuri DVD. Există și 53 de CD-uri. Pentru ceea ce este plăcut. Nu-mi place nici o opțiune. Aș descărca primul CD:

Fiți atenți la tasta "-c". Dacă pentru un motiv oarecare se termină prin injecție, apoi prin trimiterea din nou aceeași comandă (desigur - în același director), Descărcați va continua din locurile zdrențuite, mai degrabă decât a începe de la început.

Apoi, imaginea discului rezultat ar trebui să fie arsă pe un CD sau să se toarnă pe un stick flash (blitz-stick, unitate flash) și instalați de pe această distribuție de disc. pachetele necesare vor fi descărcate automat prin rețea.

1. Instalarea regulată a distribuției nu este concepută pentru cazul general, iar dacă vom lucra cu microcontrolere, este problema noastră - să instalăm pachetele necesare.

Nu sunt multe dintre ele și sunt puse de o singură echipă:

S-ar putea să doriți să instalați pachetul:

De asemenea, este logic să executați o altă comandă pentru a furniza dependențe:

Dacă doriți ca depanatorul gdb să aibă suport XML. va trebui să instalați și alte pachete:

2. Acum trebuie să ștergem site-ul pentru desfășurarea proiectului de asamblare. Pur și simplu, creați un subdirector separat și intrați în el, de exemplu:

(Numele subdirectorului nu este important, îl puteți numi așa cum vă place.)

Fiind în noul director creat, îi dăm comanda pentru a clona proiectul:

După destul de mult timp în directorul nostru va apărea subdirectorul summon-arm-toolchain. Intrăm în ea. Mulți oameni vor observa că nu am putut crea propriul director (build-arm). În general, au dreptate, dar cred că în brațul de construcție vor fi implementate mai multe subdirectoare, cu excepția brațului de strângere a brațelor. Prin urmare, pentru a nu împrăștia subdirectoarele pe disc, le-am concentrat într-un singur loc.

Dacă nu sunteți foarte versat în git, atunci puteți descărca și sursa setului de instrumente cu comanda:

Oricum, vom presupune că ați primit codul sursă pe calculatorul dvs. Acum vom intra în subdirector

Dar Wolfgang Wieser (Wolfgang Wieser) propune să execute încă o comandă git-ow:

Eu, adevărul, și nu am înțeles, ce face pentru el, dar poate fi atunci voi înțelege.

Și, în final, trebuie să executăm ultima comandă, care va colecta și instala tulchanul. Dar înainte de a face, citiți până la capăt, dintr-o dată, doriți să schimbați ceva în felul tău.

Deci, dezvoltatorii de citare spun că nu puteți zamarachivatsya la toate, și a stabilit o comandă goală (fără nici un parametru):

În același timp, Wolfgang sugerează acest lucru:

PREFIX - specifică locația unde va fi instalat tulceinul. Dezvoltatorii (și mine inclusiv!) Deseori instalați programe în:

1. Directorul de domiciliu din subdirectoarele bin (/ home / vasja_pupkin / bin /). Este convenabil, pentru că acestea sunt programele dvs. și sunteți liber să faceți ceva cu ei. Deși infectează viruși! Protecția, desigur, nu! Dar accesul la acestea pentru schimbări nu reprezintă o problemă. Dacă parametrul PREFIX nu este setat, implicit instalarea va fi efectuată în directorul $ (HOME) / sat.

2. Directorul de sistem este / usr / local / bin. Aceasta este în principal în cazul în care toate programele testate în timp cad. Aceasta este o depozitare pe termen lung. Progii ajung aici, iar utilizatorii uită de obicei de ei. Astfel, programele funcționează din acest loc - în mod fiabil și nedefinit pentru mult timp. În plus, aici există o mulțime de astfel de programe. Și dacă ceva nu merge bine în timpul instalării, vă veți strica viața atât a dvs., cât și a celorlalți. Prin urmare, este mai bine pentru noi să nu ne oprim în acest loc încă. De asemenea, puteți să instalați în directorul / usr / bin. Practic, ele nu sunt diferite unul de celălalt.







Pentru a "direcționa" instalarea aici, setați parametrul PREFIX la / usr / local sau doar / usr. Subdirectorul bin va fi adăugat automat de instalator.

SUDO - specifică prezența sau absența unui steag pentru a ieși la nivelul rădăcinii.

Să vă faceți griji că acum trebuie să tastați de șase ori numele mai lung al utilitarului sau compilatorului - nu merită. Lucrul este, este (nu-mi pare rău!) Nu Windows, iar consola Linux nu este linia de comandă Windows. În practică, nu va trebui niciodată să tastați un nume lung (cum ar fi arm-none-eabi-objdump sau altul). Odată ce, desigur, când configurați un mediu de dezvoltare sau creați un makefile special compilator Makefile. dar, de asemenea, că - cel mai probabil o veți închide de undeva (de exemplu, din acest blog), decât veți tasta pe tastatură. Deci, totul este gândit. Practica va arăta că totul este complet diferit și nu există motive de îngrijorare.

OOCD_EN - permisiunea de a instala pachetul OpenOCD.

Acest pachet (OpenOCD) este un strat gros între microcontroler și depanatorul gdb. Dacă doriți, OpenOCD este un driver puternic care poate funcționa cu un număr imens de microcontrolere, programatori, plăci de depanare și interfețe. Fiind în depanator, îi întrebați diferite comenzi. Debugger-ul le traduce (în) OpenOCD. OpenOCD le digeră în comenzile de comandă ale programatorilor hardware. Pentru a explica mai mult și nu mai clar decât veți vedea în practică. De fapt, nu este nimic complicat aici.

Pentru a instala OpenOCD. scrieți OOCD_RO = 1.

Este amuzant faptul că Wolfgang spune că nu instalează OpenOCD (OOCD_RO = 0). El explică eșecul instalării prin faptul că nu există suport pentru STM32F4 în versiunea curentă (care va fi instalată în acest fel). Dar pentru a avea suport pentru aceste pietre, OpenOCD trebuie să fie setat diferit. El are un subiect complet pe această temă.

Dar acum nu am nevoie să lucrez cu STM32F4 și, în plus, software-ul din Linux se desfășoară foarte repede. Este posibil ca în momentul în care efectuați instalarea, va fi deja implementată suportul pentru STM32F4 în OpenOCD. Deci decizi singur - ai nevoie sau nu.

Dacă nu este necesar, procedați ca aici. Dacă este necesar, adu-mi aminte și voi descrie OpenOCD de instalare într-un articol separat.

LIBSTM32_EN - Acest parametru permite compilarea bibliotecii libstm3 non-libere. Dacă aveți nevoie de această bibliotecă, scrieți LIBSTM32_RO = 1. Valoarea implicită este LIBSTM32_EN = 0.

LIBOPENCM3_EN este o altă bibliotecă pentru lucrul cu kernelul Cortex-M3. de data aceasta - gratuit. Implicit LIBOPENCM3_RO = 1.

USE_LINARO - dacă nu aveți încredere în echipa de dezvoltare care a adaptat gcc. și doriți să lucrați cu gcc "vanilie". apoi specificați USE_LINARO = 0. Valoarea implicită este USE_LINARO = 1.

DEFAULT_TO_CORTEX_M3 - vă permite să construiți utilitare (binutils) și compilatorul gcc pentru a genera codul pentru arhitectura Cortex-M3. Referindu-se la faptul că testele au arătat că această soluție nu este foarte fiabilă, dezvoltatorii nu recomandă acest lucru. În schimb, spun ei, este mai bine să adăugați opțiunile de construire în mediul software. În mod prestabilit, DEFAULT_TO_CORTEX_M3 = 0.

CPUS - numărul de nuclee de pe computer. Dacă aveți o mașină cu pompă, puteți scurta timpul de construire făcând ca toate nucleele să funcționeze. În alte aspecte, implicit în acest proiect (și subliniez - în acest proiect în alte proiecte nu este neapărat atât!) Numărul de nuclee este detectat automat și toate acestea vor fi implicate în adunare. Dar dacă în timpul adunării încă mai plănuiți să jucați o jucărie rece care mănâncă resursele procesorului, atunci vă vor fi furnizate frânele și lipirea. Pentru a evita acest lucru, specificați numărul de "cilindri" din această opțiune.

Ei bine, ca și cum ar fi fost luminate. Acum puteți da comanda de asamblare: ./summon-arm-toolchain cu parametrii necesari.

Note de utilizare

Datorită muncii bune a lui Eric Parsonge și a lui Bernard Davison, tulchein susține acum lucrul cu mai multe biblioteci. Ați putea dori să utilizați următoarea combinație CCG-steaguri pentru a furniza în cadrul proiectului sa dovedit deja (în original - veritabile, Opera, care se afla pe aripa) codul de suport pentru calcule în virgulă mobilă pentru următoarele arhitecturi:

Pentru ARM7TDMI-S, specificați steagurile: -mthumb -mcpu = arm7tdmi-s
Pentru Cortex-M0, specificați următoarele steaguri: -mthumb -mcpu = cortex-m0
Pentru Cortex-M3, specificați următoarele pavilioane: -mthumb -mcpu = cortex-m3
pentru a specifica steaguri Cortex-M4: -mthumb -mcpu = Cortex-M4 -mfloat-abi = tare -mfpu = fpv4-sp-D16

Mai mult decât atât, în mod implicit este utilizată implementarea soft a codului pentru lucrul cu punctul de flotare, dar pentru Cortex-M4 puteți specifica o implementare hardware.

Pentru a vedea o listă de combinații disponibile, executați comanda:

Ei bine! Acum, se pare, totul?

Apoi, vom înțelege problemele legate de crearea unui program pentru ARM / Cortex și de ce (și de ce) această creație diferă de crearea progului pentru AVR și MSP430.

La instalarea următoare pe calculatorul superaliment notebook RoverBook Parthner RT6 (Celeron-1200, RAM 64 MB minus 4 MB pentru vidyahi construit șurub 15 GB) injecție newlib fixated:

După cum sa dovedit, serverul ftp Red Hat nu a putut digera comanda de descărcare:

Nu-i plăcea steagul -no-pasiv-ftp. A trebuit să editez script-ul de apel-arm-toolchain.

Găsiți funcția de preluare în script și scoateți steagul din comanda wget.







Articole similare

Trimiteți-le prietenilor: