FS#30026 - [avr-libc] 1.8.0-3 gives "attempt to use poisoned "SIG_USART3_RECV" error for Arduino Mega
Attached to Project:
Community Packages
Opened by Alan Edwards (algenon) - Saturday, 26 May 2012, 14:35 GMT
Last edited by Jakob Gruber (schuay) - Tuesday, 19 June 2012, 20:52 GMT
Opened by Alan Edwards (algenon) - Saturday, 26 May 2012, 14:35 GMT
Last edited by Jakob Gruber (schuay) - Tuesday, 19 June 2012, 20:52 GMT
|
Details
Description: avr-libc 1.8.0-3 "The C runtime library for the
AVR family of microcontrollers", produces the following
error when compiling for the Arduino Mega 2560 screen shot
attached):
/usr/share/arduino/hardware/arduino/cores/arduino/HardwareSerial.cpp:91:41: error: attempt to use poisoned "SIG_USART0_RECV" /usr/share/arduino/hardware/arduino/cores/arduino/HardwareSerial.cpp:101:15: error: attempt to use poisoned "SIG_USART0_RECV" /usr/share/arduino/hardware/arduino/cores/arduino/HardwareSerial.cpp:132:15: error: attempt to use poisoned "SIG_USART1_RECV" /usr/share/arduino/hardware/arduino/cores/arduino/HardwareSerial.cpp:145:15: error: attempt to use poisoned "SIG_USART2_RECV" /usr/share/arduino/hardware/arduino/cores/arduino/HardwareSerial.cpp:158:15: error: attempt to use poisoned "SIG_USART3_RECV" I have searched the bug tracker and can find no report of this bug. I have googled the error and found that in avr-libc 1.7.1, the bug was not present (see http://www.thebytes.net/2012/05/the-beginning-of-arduino/). Since I cannot downgrade to 1.7.1 (having recently run pacman --clean since I was out of disk space). Anyway, I would like to help the developers fix this bug if I can be of assistance. Additional info: * package version(s) arduino 1:1.0-3 avr-libc 1.7.1 avr-gcc 4.7.0-1 * config and/or log files etc. /var/log/pacman.log: [2012-03-31 18:15] Running 'pacman -S avr-gcc' [2012-03-31 18:15] installed avr-binutils (2.22-2) [2012-03-31 18:15] installed avr-gcc (4.6.3-1) [2012-03-31 18:16] Running 'pacman -S avr-libc' [2012-03-31 18:16] installed avr-libc (1.8.0-1) [2012-04-04 19:36] Running 'pacman -S avr-libc' [2012-04-04 21:40] Running 'pacman -S avr-libc' [2012-04-14 12:49] upgraded avr-binutils (2.22-2 -> 2.22-3) [2012-04-14 12:49] upgraded avr-gcc (4.6.3-1 -> 4.7.0-1) [2012-04-14 12:49] upgraded avr-libc (1.8.0-1 -> 1.8.0-3) [2012-04-21 13:43] Running 'pacman -U /var/cache/pacman/pkg/avr-gcc-4.6.3-1-i686.pkg.tar.xz' [2012-04-21 13:43] upgraded avr-gcc (4.7.0-1 -> 4.6.3-1) [2012-04-22 13:50] Running 'pacman -S avr-gcc' [2012-04-22 13:50] upgraded avr-gcc (4.6.3-1 -> 4.7.0-1) Steps to reproduce: Using arduino 1:1.0-3, set the "board" to "Arduino Mega 2560 or Mega ADK" and compile, will produce the bug. Set the "board" to "Arduino Uno" and the bug does not appear, the code downloads to the Arduino and runs ok. |
This task depends upon
I will keep this open for a while in case you have further developments to report.
https://savannah.nongnu.org/bugs/index.php?36553
The good folks at Arduino do not keep up to date with the latest and greatest avr-libc.
When symbols get removed or deprecated (such as in this case,) the Arduino code won't work.
Your options are to fix the Arduino code to use the new symbols, or to use an older version of avr-libc.
Or drop the Arduino libs and code directly for the AVR, which will be more efficient anyway (some of the Arduino libs are pretty inefficient.)