title: avrdude: can't handle ELF file checkio.hex, ELF file support was not compiled in
body: <p>I am looking for someone who guide me to solve the below error in AVR Micro controller (OS:Debian 32 bit) .</p>
  
  <pre><code>/* checkio.c*/
  #ifndef F_CPU
  #define F_CPU 16000000UL
  #endif
  #include&lt;avr/io.h&gt;
  #include&lt;util/delay.h&gt;
  #include&lt;avr/fuse.h&gt;
  int main()
  {
    DDRA=0xFF;
  
    PORTA=0;
    while(1)
    {
         PORTA=0xFF;
         _delay_ms(1000);
  
          PORTA=0;
         _delay_ms(1000);
    }
  
    return 0;
  }
  </code></pre>
  
  <p>AND related make file is :</p>
  
  <pre><code>CFLAGS1=-g -mmcu=atmega32 -c
  CFLAGS2=-g -mmcu=atmega32 -o
  GFLAGS3=-j .text -j .data ihex
  
  checkio.hex:checkio.elf
      avr-objcopy $(CFLAGS3) checkio.elf checkio.hex
  checkio.elf:checkio.o
      avr-gcc $(CFLAGS2) checkio.elf checkio.o
  checkio.o:checkio.c
      avr-gcc $(CFLAGS1) checkio.c
  
  burn:   
      sudo /home/poonam/proj_utility/avr_dude/install/bin/avrdude -p atmega32 -P /dev/bus/usb/002/004 -c usbasp -u -U flash:w:checkio.hex
  clean:
      rm *.elf *.hex *.o
  </code></pre>
  
  <p>avrdude: warning: cannot set sck period. please check for usbasp firmware update.</p>
  
  <p>avrdude: AVR device initialized and ready to accept instructions</p>
  
  <p>Reading | ################################################## | 100% 0.01s</p>
  
  <p>avrdude: Device signature = 0x1e9502</p>
  
  <p>avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
           To disable this feature, specify the -D option.</p>
  
  <p>avrdude: erasing chip</p>
  
  <p>avrdude: warning: cannot set sck period. please check for usbasp firmware 
  update.</p>
  
  <p>avrdude: reading input file "checkio.hex"</p>
  
  <p>avrdude: input file checkio.hex auto detected as ELF</p>
  
  <p>avrdude: can't handle ELF file checkio.hex, ELF file support was not compiled in</p>
  
  <p>avrdude: read from file 'checkio.hex' failed</p>
  
  <p>avrdude done.  Thank you.</p>