test.ino
void setup()
{
pinMode(13,OUTPUT);
}
void loop()
{
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
delay(500);
}
Arduino IDE console output(for easy read , I formated)
#step 1
E:Arduinoarduino-1.7.10/hardware/tools/avr/bin/avr-g++
-c # just process , complie , assembl e , not link , so it generate object file
-g # for debug
-Os # optimize for size
-w # suppress all warning
-fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics
-MMD
-mmcu=atmega328p
-DF_CPU=16000000L
-DARDUINO=107010
-DARDUINO_AVR_NANO
-DARDUINO_ARCH_AVR
-IE:Arduinoarduino-1.7.10hardwarearduinoavrcoresarduino
-IE:Arduinoarduino-1.7.10hardwarearduinoavrvariantseightanaloginputs
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp est.cpp -o
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp est.cpp.o
#step2
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmphooks.c.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpWInterrupts.c.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpwiring.c.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpwiring_analog.c.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpwiring_digital.c.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpwiring_pulse.c.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpwiring_shift.c.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpabi.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpCDC.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpHardwareSerial.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpHardwareSerial0.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpHardwareSerial1.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpHardwareSerial2.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpHardwareSerial3.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpHID.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpIPAddress.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpmain.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpnew.cpp.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpPrint.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpStream.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpTone.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpUSBCore.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpWMath.cpp.o
使用已经编译的文件:C:Usersxxx AppDataLocalTempuild4353357245568764721.tmpWString.cpp.o
使用已经编译的文件:C:UsersxxxAppDataLocalTempuild4353357245568764721.tmpcore.a
#step 3
E:Arduinoarduino-1.7.10/hardware/tools/avr/bin/avr-gcc
-w
-Os
-Wl,
--gc-sections
-mmcu=atmega328p
-o C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp/test.cpp.elf
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp est.cpp.o
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp/core.a
-L C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp -lm
E:Arduinoarduino-1.7.10/hardware/tools/avr/bin/avr-objcopy
-O ihex
-j .eeprom --set-section-flags=.eeprom=alloc,load
--no-change-warnings
--change-section-lma .eeprom=0
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp/test.cpp.elf
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp/test.cpp.eep
E:Arduinoarduino-1.7.10/hardware/tools/avr/bin/avr-objcopy
-O ihex
-R .eeprom
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp/test.cpp.elf
C:UsersxxxAppDataLocalTempuild4353357245568764721.tmp/test.cpp.hex
procedure map(I guss)
![](https://images2015.cnblogs.com/blog/858860/201704/858860-20170401230431899-2072602371.png)