Tuesday, 31 October 2017

Objcopy Ihex Binære Alternativer


GNU Binutils GNU Binutils er en samling av binære verktøy. De viktigste er: Men de inkluderer også: addr2line - Konverterer adresser til filnavn og linjenumre. ar - Et verktøy for å lage, modifisere og trekke ut fra arkiver. cfilt - Filter for å demontere kodede C-symboler. dlltool - Oppretter filer for å bygge og bruke DLLs. gull - En ny, raskere, ELF eneste linker, fortsatt i beta-test. gprof - Viser profileringsinformasjon. nlmconv - Konverterer objektkode til en NLM. nm - Viser symboler fra objektfiler. objcopy - Kopierer og oversetter objektfiler. objdump - Viser informasjon fra objektfiler. ranlib - Genererer en indeks til innholdet i et arkiv. selv - Viser informasjon fra en hvilken som helst ELF-formatobjektfil. størrelse - Viser delstørrelsene til et objekt eller en arkivfil. strenger - Viser utskrivbare strenger fra filer. stripe - kasserer symboler. windmc - En Windows-kompatibel meldingskompilator. windres - En kompilator for Windows ressursfiler. De fleste av disse programmene bruker BFD. biblioteket for binærfilbeskrivelse, for å gjøre lavt nivå manipulasjon. Mange av dem bruker også opkoderbiblioteket til å montere og demontere maskininstruksjoner. Binutils har blitt sendt til de fleste store Unix-varianter, samt Wintel-systemer, og deres hovedgrunn til eksistensen er å gi GNU-systemet (og GNULinux) muligheten til å kompilere og knytte programmer. Hente binutils Den nyeste versjonen av GNU binutils er 2.28. De forskjellige NEWS-filene (binutils, gas og ld) har detaljer om hva som har endret seg i denne utgivelsen. Se PROGRAMVAREN-siden for informasjon om hvordan du mottar utgivelser av GNU binutils og annen GNU-programvare. Nåværende utgivelse kan lastes ned fra ftp. gnu. orggnubinutils Hvis du planlegger å gjøre aktivt arbeid på GNU binutils, kan du få tilgang til utviklingskildetreet ved anonym git: Alternativt kan du bruke gitweb-grensesnittet. eller kildebilder, tilgjengelig som bzipped tar-filer via anonym FTP fra ftp: sourceware. orgpubbinutilssnapshots. Feilrapporter Postlister Det er tre binutils-postlister: bug-binutilsgnu. org (arkiver) For rapportering av feil. binutilssourceware. org (arkiver) For å diskutere binutils problemer. binutils-cvs (arkiver) En skrivebeskyttet e-postliste med notater fra sjekker til binutils git-depot. (Denne listen har et merkelig navn av historiske årsaker.) Du kan bruke dette skjemaet til å abonnere på binutilssourceware. org eller binutils-cvssourceware. org-postlister: For å abonnere på bug-binutilsgnu. org-postlisten, se bug-binutils info side. Du kan ønske å bla gjennom de gamle postarkivene på gas2 og bfd mailinglister. Dette var diskusjonslister for binutiler frem til mai 1999. Vennligst ikke send e-post til dem lenger. Dokumentasjon En veiledning for å transportere binutils til et nytt mål har blitt bidratt. Vennligst send FSF amp GNU forespørsler amp spørsmål til gnugnu. org. Det er også andre måter å kontakte FSF på. Vennligst send kommentarer på disse nettsidene til binutilssourceware. org. send andre spørsmål til gnugnu. org. Opphavsrett (C) 1998, 2000-2014 Free Software Foundation, Inc. 51 Franklin Street, 5th Floor, Boston, MA 02110-1301, USA. Komplett kopiering og distribusjon av hele denne artikkelen er tillatt i ethvert medium, forutsatt at denne kunngjøringen er bevart. Oppdatert: Sist endret: Mon Sep 23 08:45:03 BST 2014 Advance Notice Navigation Generering av srec (Motorola S-format), binære, ihex (Intel Hex) - filer Når du bygger et prosjekt, vil kode Red Tools-pakken skape et ARM-kjørbart format (AXF) - filen - som faktisk er ELFDWARF. Denne filen kan programmeres direkte ned til målet ditt ved hjelp av kode rød feilsøkingsfunksjonalitet. Men det kan også konverteres til en rekke formater som er egnet for bruk i andre eksterne verktøy. Den objcopy (arm-ingen-eabi-objcopy) verktøyet brukes til dette. Objcopy kan konvertere til følgende formater: srec binær ihex tekhex For eksempel, for å konvertere example. axf til binært format, bruk følgende kommando: arm-none-eabi-objcopy - O binært eksempel. axf example. bin Hvis du Ctrl-klikker På prosjektnavnet på høyre side av bunnen av IDE, vil dette starte en kommandoprompt i prosjektkatalogen med passende baner som er satt opp. Alt du trenger å gjøre før du kjører objcopy-kommandoen, endres i katalogen av den nødvendige byggekonfigurasjonen. Du kan også velge. axf-filen i Project Explorer, høyreklikk og velg Binary Utilities-gtCreate binær. Du kan endre alternativene som brukes til å lage en binær fil på denne måten på Windows-gtPreferences, LPCXpressoRedSuiteUtilites preferansesiden. Automatisk konvertering av filen under en bygg Objcopy kan brukes til å automatisk konvertere en axf-fil under en build. For å gjøre dette, opprett et passende Post-build-trinn. For flere detaljer, se FAQ Etterbehandling av ditt koblede program. Image Checksums (NXP LPC-familier) NXP-deler bruker et ord i vektortabellen til prosessoren for å lagre et sjekksum som undersøkes av oppstartslaster for å identifisere et gyldig bilde. For ARM7ARM9-baserte deler er dette kontrollsumordet lagret i forskyvning 0x14, for Cortex-M-baserte deler lagres det i offset 0x1C. Når du laster ned kode via feilsøkingsprogrammet, fylles dette kontrollsumordet automatisk inn når bildet lastes ned. Når du oppretter en binær fil, må du sørge for at du kjører det medfølgende sjekksumverktøyet for å etterbehandle binæret selv. Hvis du endrer det medfølgende post-build-trinnet for å opprette binæret ditt (i henhold til FAQ-postbehandlingen din koblet applikasjon., Vil dette normalt bli gjort automatisk av post-build-trinnet: Men hvis du trenger å lage en hex-fil for bruk av FlashMagic må det tas hensyn til at du ikke kjører sjekksumverktøyet på selve hex-filen. Kontrollsumverktøyet fungerer bare på binære filer, ikke hex-filer. Derfor vil kontrollsummen ødelegge hex-filen din hvis du bruker hex-filen som input. Vær oppmerksom på at FlashMagic automatisk vil sette kontrollsumordet for deg når du bruker det til å programmere en hex-fil til en LPC-enhet. Men hvis du ønsker å sette sjekksummen selv, er det anbefalt å lage en slik hex-fil som følger: konvertere til binær kjøre sjekkeverktøyet konvertere binær i hex, ved hjelp av arm-none-eabi-objcopy - I binær - O ihex myfile. bin myfile. hex Generere andre typer checksum Det er mange forskjellige typer kontrollsum som brukere kan ønsker å utføre på et bilde. En flott verktøy for å manipulere bildefiler og generere en rekke sjekksummer er Open Source SRecord Tool. OutputFormats (() DerekMorris 2012-01-15 20:36:13) AVR Libc Reference Manual Et enkelt prosjekt Generere Intel Hex-filer Vi har et binært program, men hvordan får vi det inn i prosessoren De fleste (om ikke alle) programmerere vil ikke akseptere en GNU-kjørbar som en input-fil, så vi må gjøre litt mer behandling. Det neste trinnet er å trekke ut deler av binæret og lagre informasjonen i. hex filer. GNU-verktøyet som gjør dette kalles avr-objcopy. ROM-innholdet kan trekkes fra våre prosjekter binære og legges inn i filen demo. hex ved hjelp av følgende kommando: avr-objcopy - j. text - j. data - O ihex demo. elf demo. hex Den resulterende demo. hex-filen inneholder : 1000000020E0A0E6B0E001C01D92A336B207E1F700: 100010001F920F920FB60F9211242F938F939F93DD: 1000200080916200882301F1813081F48091600029: 100030009091610001979093610080936000009718: 1000400049F41092620080E090E004C0809160006A: 10005000909161009BBD8ABD9F918F912F910F90D0: 100060000FBE0F901F9018958091600090916100D5: 10007000019690936100809360008F3F23E0920788: 1000800049F781E0809362008FEF93E0E3CF83E84C: 100090008FBD8EB581608EBD1BBC1ABC82E087BB54: 1000A00084E089BF7894089583E88FBD8EB5816020: 1000B0008EBD1BBC1ABC82E087BB84E089BF7894EC: 1000C00085B7806885BF889585B78F7785BFF8CF5E: 0800D000F89400C0F894FFCF82: 00000001FF den j alternativet viser at vi ønsker informasjon fra. text og. data segment ut. Hvis vi spesifiserer EEPROM-segmentet, kan vi generere en. hex-fil som kan brukes til å programmere EEPROM: avr-objcopy - j. eeprom - change-section-lma. eeprom0 - O ihex demo. elf demoeeprom. hex Det er ingen demoeeprom. hex fil skrevet, da den filen ville være tom. Begynn med versjon 2.17 av GNU binutils, avr-objcopy-kommandoen som brukes til å generere de tomme EEPROM-filene, avbrytes nå på grunn av den tomme inngangsseksjonen. eeprom, slik at disse tomme filene ikke genereres. Det signalerer også en feil til Makefile som vil bli fanget der, og får det til å skrive ut en melding om at den tomme filen ikke genereres.

No comments:

Post a Comment