Friday, 1 December 2017

Objcopy ihex binära alternativ


GNU Binutils GNU Binutils är en samling binära verktyg. De viktigaste är: Men de innehåller också: addr2line - Konverterar adresser till filnamn och radnummer. ar - Ett verktyg för att skapa, modifiera och extrahera från arkiv. cfilt - Filter för att demangle kodade C-symboler. dlltool - Skapar filer för att bygga och använda DLL-filer. guld - En ny, snabbare, ELF-endast länkare, fortfarande i beta-test. gprof - Visar profileringsinformation. nlmconv - Konverterar objektkod till en NLM. nm - listar symboler från objektfiler. objcopy - Kopierar och översätter objektfiler. objdump - Visar information från objektfiler. ranlib - Genererar ett index till innehållet i ett arkiv. självklart - Visar information från någon ELF-formatobjektfil. storlek - Visar sektionerna för ett objekt eller en arkivfil. strängar - listar utskrivbara strängar från filer. remsa - Kasta bort symboler. windmc - En Windows-kompatibel meddelande kompilator. windres - En kompilator för Windows resursfiler. De flesta av dessa program använder BFD. biblioteket för binära filbeskrivningar, för att göra manipulation på låg nivå. Många av dem använder också opcodes-biblioteket för att montera och demontera maskininstruktioner. Binutilsna har blivit portade till de flesta stora Unix-varianterna samt Wintel-system, och deras främsta orsak till existensen är att ge GNU-systemet (och GNULinux) möjligheten att sammanställa och länka program. Hämta binutils Den senaste versionen av GNU binutils är 2.28. De olika NEWS-filerna (binutils. Gas. Och ld) har detaljer om vad som har ändrats i den här utgåvan. Se SOFTWARESidan för information om hur man hämtar utgåvor av GNU binutils och annan GNU-programvara. Den nuvarande versionen kan hämtas från ftp. gnu. orggnubinutils Om du planerar att göra aktivt arbete på GNU binutils, kan du komma åt utvecklingskällträdet med anonym git: Alternativt kan du använda gitweb-gränssnittet. eller källa snapshots, tillgängliga som bzipped tar filer via anonym FTP från ftp: sourceware. orgpubbinutilssnapshots. Felrapporter Postlistor Det finns tre binutils-postlistor: bug-binutilsgnu. org (arkiv) För rapportering av fel. binutilssourceware. org (arkiv) För att diskutera problem med binutils. binutils-cvs (arkiv) En skrivskyddad e-postlista med anteckningar från checkins till binutils git repository. (Den här listan har ett udda namn av historiska skäl.) Du kan använda det här formuläret för att prenumerera på binutilssourceware. org eller binutils-cvssourceware. org-postlistorna: För att prenumerera på bug-binutilsgnu. org-postlistan, se bug-binutils info sida. Du kanske vill bläddra i de gamla postarkiven på gas2 och bfd-postlistorna. Dessa var diskussionslistorna för binutils fram till maj 1999. Vänligen skicka inte mail till dem längre. Dokumentation En guide för att transportera binutilsna till ett nytt mål har bidragits. Vänligen skicka FSF amp GNU förfrågningar amp frågor till gnugnu. org. Det finns också andra sätt att kontakta FSF. Vänligen skicka kommentarer på dessa webbsidor till binutilssourceware. org. skicka andra frågor till gnugnu. org. Copyright (C) 1998, 2000-2014 Free Software Foundation, Inc. 51 Franklin Street, 5th Floor, Boston, MA 02110-1301, USA Förbättrad kopiering och distribution av hela denna artikel är tillåten i något medium, förutsatt att detta meddelande bevaras. Uppdaterad: Senast ändrad: Mon Sep 23 08:45:03 BST 2014 Advance Notice Navigation Generera srec-filer (Motorola S-format), binära, ihex (Intel Hex) - filer När du bygger ett projekt, skapar programmet Red Editor-sviten ett ARM-körbart format (AXF) - filen - som faktiskt är ELFDWARF. Den här filen kan programmeras direkt ner till ditt mål med funktionen Code Red debug. Men det kan också konverteras till en mängd olika format som är lämpliga för användning i andra externa verktyg. Den objcopy (arm-none-eabi-objcopy) verktyget används för detta. Objcopy kan konvertera till följande format: srec binär ihex tekhex Till exempel, för att konvertera example. axf till binärt format, använd följande kommando: arm-none-eabi-objcopy - O binär example. axf example. bin Om du Ctrl-klickar På projektnamnet på höger sida av IDE: ns undre fält öppnar detta en kommandotolk i projektkatalogen med lämpliga sökvägar. Allt du behöver göra innan du kör objcopy-kommandot ändras till katalogen för den nödvändiga byggkonfigurationen. Du kan också välja. axf-filen i Project Explorer, högerklicka och välj Binary Utilities-gtCreate binär. Du kan ändra alternativen som används för att skapa en binär fil på detta sätt på sidan Preferences-sida i Windows-gtPreferences, LPCXpressoRedSuiteUtilites. Automatiskt konvertera filen under en byggnad Objcopy kan användas för att automatiskt konvertera en axf-fil under en byggnad. För att göra detta, skapa ett lämpligt efterbyggnadssteg. Mer information finns i FAQ Efterbehandling av din länkade ansökan. Image Checksums (NXP LPC-familjer) NXP-delar använder ett ord i processorns vektortabell för att lagra en kontrollsumma som undersöks av startläsaren för att identifiera en giltig bild. För ARM7ARM9-baserade delar lagras detta kontrollsummord i offset 0x14, för Cortex-M-baserade delar lagras den i offset 0x1C. När du hämtar koden via debugger fylls det här kontrollsummordet automatiskt när bilden hämtas. När du skapar en binär fil måste du se till att du kör det medföljande kontrollsumverktyget för att efterbehandla binären själv. Om du ändrar det medföljande postbyggnadssteget för att skapa ditt binära (enligt Vanliga frågor efter bearbetning av din länkade ansökan, görs det normalt automatiskt efter steg efter byggnad: Men om du behöver skapa en hex-fil för användning av FlashMagic måste du ta hand om att du inte kör kontrollsumverktyget på hex-filen själv. Kontrollsumverktyget fungerar bara på binära filer, inte hex-filer. Därför kommer kontrollsummen att korrumpera din hex-fil om du använder hex-filen som inmatning. Observera att FlashMagic automatiskt ställer in kontrollsäkringsordet för dig när du använder det för att programmera en hex-fil till en LPC-enhet. Men om du vill ställa in kontrollsumman själv är det rekommenderat att skapa en sådan hex-fil som följer: konvertera till binär köra checkumverktyget omvandla binärt i hex, med hjälp av arm-none-eabi-objcopy - I binär - O ihex myfile. bin myfile. hex Generera andra typer av checksum Det finns många olika typer av checksum som användare kan vill utföra på en bild. En bra verktyg för att manipulera bildfiler och generera en mängd kontrollsummor är Open Source SRecord Tool. OutputFormats (() DerekMorris 2012-01-15 20:36:13) AVR Libc Referenshandbok Ett enkelt projekt Generera Intel Hex-filer Vi har ett binärt program men hur går det in i processorn De flesta (om inte alla) programmerare accepterar inte en GNU-körbar som en inmatningsfil, så vi behöver göra lite mer behandling. Nästa steg är att extrahera delar av binären och spara informationen i. hex-filer. GNU-verktyget som gör detta kallas avr-objcopy. ROM-innehållet kan dras från våra projekt binära och läggas in i filen demo. hex med följande kommando: avr-objcopy - j. text - j. data - O ihex demo. elf demo. hex Den resulterande demo. hex-filen innehåller : 1000000020E0A0E6B0E001C01D92A336B207E1F700: 100010001F920F920FB60F9211242F938F939F93DD: 1000200080916200882301F1813081F48091600029: 100030009091610001979093610080936000009718: 1000400049F41092620080E090E004C0809160006A: 10005000909161009BBD8ABD9F918F912F910F90D0: 100060000FBE0F901F9018958091600090916100D5: 10007000019690936100809360008F3F23E0920788: 1000800049F781E0809362008FEF93E0E3CF83E84C: 100090008FBD8EB581608EBD1BBC1ABC82E087BB54: 1000A00084E089BF7894089583E88FBD8EB5816020: 1000B0008EBD1BBC1ABC82E087BB84E089BF7894EC: 1000C00085B7806885BF889585B78F7785BFF8CF5E: 0800D000F89400C0F894FFCF82: 00000001FF den - j alternativet visar att vi vill att informationen från. text och. data segment extraheras. Om vi ​​anger EEPROM-segmentet kan vi generera en. hex-fil som kan användas för att programmera EEPROM: avr-objcopy - j. eeprom - change-section-lma. eeprom0 - O ihex demo. elf demoeeprom. hex Det finns ingen demoeeprom. hex fil skrivet, eftersom den filen skulle vara tom. Från och med version 2.17 av GNU binutils avbryts kommandot avr-objcopy som brukade generera de tomma EEPROM-filerna på grund av den tomma inmatnings sektionen. eeprom, så dessa tomma filer genereras inte. Det signalerar också ett fel på Makefile som kommer att fångas där och får det att skriva ut ett meddelande om att den tomma filen inte genereras.

No comments:

Post a Comment