AVR-GCC-4.7.0 Toolchain for Windows

34 posts / 0 new
Last post
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I compiled a Toolchain including 4.7.0 (as of 2012-17-02) for Windows, including some fixes to known bugs of this version, like the LTO-Bug, the Relax Bug, The Multilib-tiny-stack Bug. There are probably other minor bugs but it works fine for me.

It is a standalone Toolchain, but only the core Components are included. All other Tools can be taken by WinAVR or Atmels Toolchain.

It includes:
- Binutils-2.22 (as of 2012-19-02)
- Avr-Libc-1.8.0
- AVR-Dude 5.11.1
- Languages: C, C++
- Support for ATMega and ATXMega Devices!!

As stated, you can use it as standalone version, but if you are missing some tools, install WinAVR first and then replace its files with those from my Package.

This is the Download Link, size is around 11 MB.

I hope you can profit from this! For my project, which is about 16kb, it improves the size 4,1% with -Os (Optimize for size) and 1,4% with -O2 compared to Atmels most recent Toolchain which is based on gcc 4.5.1

I would like to hear your results and please report any bugs, when found, here or directly to GCC Bugzilla.

Many greetings,
Stefan

Update 02/22: Added the missing .dll file to each directory.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for the hard work, Stefan ! I'll let you know . I would've liked it to have USB_Xmega ( crt.o files ) support though, I know it wasn't under your control . :)

1) Studio 4.18 build 716 (SP3)
2) WinAvr 20100110
3) PN, all on Doze XP... For Now
A) Avr Dragon ver. 1
B) Avr MKII ISP, 2009 model
C) MKII JTAGICE ver. 1

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You can take a look at the appended file to see which devices are supported. Alot (or even all) ATXMegaxxxxU devices are supported and crt.o files are there. For exampe for the atxmega128a1u the file is crtx128a1u.o.

Or maybe i understand you wrong?

Edit: every device, that is mentioned in the appended file, is supported.

Please keep in mind that the xmega support is new and has not been tested by anyone besides me until now :)
Our tanks for this nice work belongs to the hard-working people from the avr-gcc department of GNU Compiler. Atmel itself has not released its sources from their xmega-supporting avr-gcc

Attachment(s): 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I meant for the new xmegas with builtin USB, example Xmega32A4U .

1) Studio 4.18 build 716 (SP3)
2) WinAvr 20100110
3) PN, all on Doze XP... For Now
A) Avr Dragon ver. 1
B) Avr MKII ISP, 2009 model
C) MKII JTAGICE ver. 1

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yep this particular device isnt supported atm.
Let me talk to the developers and see what they can do!

Maybe you could take a look and provide a list of missing devices.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

srmeister wrote:
Maybe you could take a look and provide a list of missing devices.
That's a list I don't have .

1) Studio 4.18 build 716 (SP3)
2) WinAvr 20100110
3) PN, all on Doze XP... For Now
A) Avr Dragon ver. 1
B) Avr MKII ISP, 2009 model
C) MKII JTAGICE ver. 1

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

srmeister wrote:
please report any bugs, when found, here or directly to GCC Bugzilla.
Prior to reporting, please read http://gcc.gnu.org/bugs

There is an up-to date list of most PRs, mainly focused at avr-gcc. You can skim the lists and maybe your problem is already known, worked on or even fixed.
• www.mikrocontroller.net: avr-gcc Bugs
• gcc.gnu.org/bugzilla: avr
• AVR Libc: bugs

avrfreaks does not support Opera. Profile inactive.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

wow thanks you, I will test it!

LTO is working?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I tried the toolchain by overwriting it over the AS5.1 default toolchain folders (C:\Program Files (x86)\Atmel\AVR Studio 5.1\extensions\Atmel\AVRGCC\3.3.1.27\AVRToolchain) but it giving me this error when avr-gcc.exe starts and it can't compile.

Attachment(s): 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Seems working in cygwin under Win7/64. I renamed the folder to C:/avr-gcc47 and added it to the beginning of the PATH, as you said winavr picks up the rest:

$ PATH=/cygdrive/c/avr-gcc47/bin:$PATH

Thanks!

$ avr-gcc --version
avr-gcc.exe (WinAVR 20100110) 4.3.3
$ avr-size -C --mcu=atmega1284p webserver6.avr-raven
AVR Memory Usage
----------------
Device: atmega1284p
Program:   73838 bytes (56.3% Full)
(.text + .data + .bootloader)

Data:      13044 bytes (79.6% Full)
(.data + .bss + .noinit)

$ avr-gcc --version
avr-gcc.exe (GCC) 4.7.0 20120217 - by SRMeister
]$ avr-size -C --mcu=atmega1284p webserver6.avr-raven
AVR Memory Usage
----------------
Device: atmega1284p

Program:   68896 bytes (52.6% Full)
(.text + .data + .bootloader)

Data:      13060 bytes (79.7% Full)
(.data + .bss + .noinit)
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

DieCore wrote:
I tried the toolchain by overwriting it over the AS5.1 default toolchain folders (C:\Program Files (x86)\Atmel\AVR Studio 5.1\extensions\Atmel\AVRGCC\3.3.1.27\AVRToolchain) but it giving me this error when avr-gcc.exe starts and it can't compile.
In INSTALL-DIR/avr/bin there should be a libiconv-2.dll.

BTW: I'd propose you could use path name with umlauts, ligatures and some chinese and khmer characters ;-)

avrfreaks does not support Opera. Profile inactive.

Pages