www.mikrocontroller.net

Forum: Compiler & IDEs avr-libc kompilieren schlägt fehl


Autor: Nils S. (fitec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich nutze gentoo linux und bin dabei mir die avr tools selbst zu bauen 
(keine packages in der repo).

Vorgegangen bin ich nach folgendem howto: 
http://www.nongnu.org/avr-libc/user-manual/install...

avr-binutils und avr-gcc sind auch dementsprechend korrekt kompiliert 
und installiert.

Doch bei der avr-libc schlägt bereits das configure fehl:
~$ ./configure --prefix=/usr/local/avr --build=`./config.guess` --host=avr
Wirft folgendes aus:
checking build system type... i686-pc-linux-gnu
checking host system type... avr-unknown-none
checking if configuring for cross compile... yes
checking if target host is avr... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for avr-strip... no
checking for strip... strip
configure: WARNING: In the future, Autoconf will not detect cross-tools
whose name does not start with the host triplet.  If you think this
configuration is useful to you, please write to autoconf@gnu.org.
checking for avr-gcc... no
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... yes
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for avr-as... no
checking for as... as
checking dependency style of gcc... gcc3
checking for avr-ranlib... no
checking for ranlib... ranlib
checking for avr-ar... no
checking for ar... ar
configure: error: Wrong C compiler found; check the PATH!
Wie man sieht scheint die config die avr-binutils und den avr-gcc nicht 
zu finden, wohl aber die Systemeigenen.
Erwartet configure den avr Kram eventuell in /usr/bin ?
Ich habe bereits fleißig gegoogelt, habe aber auch keinerlei Schalter 
gefunden configure beizubringen wo genau binutils und gcc für avr 
liegen.
Sollte es sich bestätigen, dass configure die in /usr/bin will, bin ich 
wohl gezwungen symbolische Links dorthin zu legen, was ich eigentlich 
vermeiden wollte.

Grüße,
Nils

Autor: Bingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
You need a functioning avr toolchain (compiler) on the "path" , in order 
to build avr-libc.

Make sure the avr toolchain executables are on your path.

/Bingo

Autor: Nils S. (fitec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Bingo,

which path do you mean? /usr/bin ?
My toolchain is working I think, because configuring, compiling and 
installing ran without errors and the binaries are in /usr/local/avr/bin

Regards,
Nils

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nils S. schrieb:
> Hi Bingo,
>
> which path do you mean? /usr/bin ?
> My toolchain is working I think, because configuring, compiling and
> installing ran without errors and the binaries are in /usr/local/avr/bin

Dann muss /usr/local/avr/bin auch im Suchpfad sein, d.h. which avr-gcc 
sollte genau diesen Pfad als Antwort geben.

Autor: Nils S. (fitec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Danke für die schnellen Antworten ;-)
~$ which avr-gcc
which: no avr-gcc in (/sbin:/bin:/usr/sbin:/usr/bin)

Ok, Problem also wie vermutet.
Wo editiere ich denn die Pfade in denen er die binaries sucht?

Lg,
Nils

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
export $PATH=/usr/local/avr/bin:$PATH

Das kannst du auch in deine ~/.bashrc schreiben, damit es permanent so 
bleibt.

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmpf, gerade beim Absenden gemerkt.

> export $PATH=/usr/local/avr/bin:$PATH

Muß heißen:

export PATH=/usr/local/avr/bin:$PATH

Autor: Bingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Have a look here , and maybe in the script (building a full toolchain)
http://www.avrfreaks.net/index.php?name=PNphpBB2&f...

Script
http://www.avrfreaks.net/index.php?name=PNphpBB2&f...


I have added this to my .bash_profile in my /home directory , it sets up 
the path to avr-gcc.

# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/avr/bin
export PATH

/Bingo (who made the script)

Autor: Nils S. (fitec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

vielen Dank, configure läuft nun sauber durch.
Jedoch schlägt das kompilieren fehl (was denn noch alles? :s).
Hier der Abschnitt:
Making all in attiny2313a                                                                                                                                                        
make[5]: Entering directory `/usr/local/avr/avr-libc-1.6.8/avr/lib/avr25/attiny2313a'                                                                                            
avr-gcc -DHAVE_CONFIG_H -I. -I../../../..  -I../../../../common -I../../../../include -I../../../../include  -I../../../../common -I../../../../include -I../../../../include -x assembler-with-cpp -Wa,-gstabs -mmcu=attiny2313a    -MT gcrt1.o -MD -MP -MF .deps/gcrt1.Tpo -c -o gcrt1.o ../../../../crt1/gcrt1.S                                               
unknown MCU 'attiny2313a' specified                                                                                                                                              
Known MCU names:                                                                                                                                                                 
   avr2                                                                                                                                                                          
   at90s2313                                                                                                                                                                     
   at90s2323                                                                                                                                                                     
   at90s2333                                                                                                                                                                     
   at90s2343                                                                                                                                                                     
   attiny22                                                                                                                                                                      
   attiny26                                                                                                                                                                      
   at90s4414                                                                                                                                                                     
   at90s4433                                                                                                                                                                     
   at90s4434                                                                                                                                                                     
   at90s8515                                                                                                                                                                     
   at90c8534                                                                                                                                                                     
   at90s8535                                                                                                                                                                     
   avr25                                                                                                                                                                         
   ata6289                                                                                                                                                                       
   attiny13                                                                                                                                                                      
   attiny13a                                                                                                                                                                     
   attiny2313                                                                                                                                                                    
   attiny24                                                                                                                                                                      
   attiny44                                                                                                                                                                      
   attiny84                                                                                                                                                                      
   attiny25                                                                                                                                                                      
   attiny45                                                                                                                                                                      
   attiny85                                                                                                                                                                      
   attiny261                                                                                                                                                                     
   attiny461                                                                                                                                                                     
   attiny861                                                                                                                                                                     
   attiny43u                                                                                                                                                                     
   attiny87                                                                                                                                                                      
   attiny48                                                                                                                                                                      
   attiny88                                                                                                                                                                      
   at86rf401                                                                                                                                                                     
   avr3                                                                                                                                                                          
   at43usb355                                                                                                                                                                    
   at76c711                                                                                                                                                                      
   avr31                                                                                                                                                                         
   atmega103                                                                                                                                                                     
   at43usb320                                                                                                                                                                    
   avr35                                                                                                                                                                         
   at90usb82                                                                                                                                                                     
   at90usb162                                                                                                                                                                    
   atmega8u2                                                                                                                                                                     
   atmega16u2                                                                                                                                                                    
   atmega32u2                                                                                                                                                                    
   attiny167                                                                                                                                                                     
   attiny327                                                                                                                                                                     
   avr4                                                                                                                                                                          
   atmega8                                                                                                                                                                       
   atmega48                                                                                                                                                                      
   atmega48p                                                                                                                                                                     
   atmega88                                                                                                                                                                      
   atmega88p                                                                                                                                                                     
   atmega8515                                                                                                                                                                    
   atmega8535                                                                                                                                                                    
   atmega8c1                                                                                                                                                                     
   atmega8m1                                                                                                                                                                     
   atmega8hva                                                                                                                                                                    
   atmega4hvd                                                                                                                                                                    
   atmega8hvd                                                                                                                                                                    
   at90pwm1                                                                                                                                                                      
   at90pwm2                                                                                                                                                                      
   at90pwm2b                                                                                                                                                                     
   at90pwm3                                                                                                                                                                      
   at90pwm3b                                                                                                                                                                     
   at90pwm81                                                                                                                                                                     
   avr5                                                                                                                                                                          
   atmega16                                                                                                                                                                      
   atmega161                                                                                                                                                                     
   atmega162                                                                                                                                                                     
   atmega163                                                                                                                                                                     
   atmega164p                                                                                                                                                                    
   atmega165                                                                                                                                                                     
   atmega165p                                                                                                                                                                    
   atmega168                                                                                                                                                                     
   atmega168p                                                                                                                                                                    
   atmega169                                                                                                                                                                     
   atmega169p                                                                                                                                                                    
   atmega32                                                                                                                                                                      
   atmega323                                                                                                                                                                     
   atmega324p                                                                                                                                                                    
   atmega325                                                                                                                                                                     
   atmega325p                                                                                                                                                                    
   atmega3250                                                                                                                                                                    
   atmega3250p                                                                                                                                                                   
   atmega328p                                                                                                                                                                    
   atmega329                                                                                                                                                                     
   atmega329p                                                                                                                                                                    
   atmega3290                                                                                                                                                                    
   atmega3290p                                                                                                                                                                   
   atmega406                                                                                                                                                                     
   atmega64                                                                                                                                                                      
   atmega640                                                                                                                                                                     
   atmega644                                                                                                                                                                     
   atmega644p                                                                                                                                                                    
   atmega645                                                                                                                                                                     
   atmega6450                                                                                                                                                                    
   atmega649                                                                                                                                                                     
   atmega6490                                                                                                                                                                    
   atmega16hva                                                                                                                                                                   
   atmega16hvb                                                                                                                                                                   
   atmega32hvb                                                                                                                                                                   
   at90can32                                                                                                                                                                     
   at90can64                                                                                                                                                                     
   at90pwm216                                                                                                                                                                    
   at90pwm316                                                                                                                                                                    
   atmega16c1                                                                                                                                                                    
   atmega32c1                                                                                                                                                                    
   atmega64c1                                                                                                                                                                    
   atmega16m1                                                                                                                                                                    
   atmega32m1                                                                                                                                                                    
   atmega64m1                                                                                                                                                                    
   atmega16u4                                                                                                                                                                    
   atmega32u4                                                                                                                                                                    
   atmega32u6                                                                                                                                                                    
   at90scr100                                                                                                                                                                    
   at90usb646                                                                                                                                                                    
   at90usb647                                                                                                                                                                    
   at94k                                                                                                                                                                         
   avr51                                                                                                                                                                         
   atmega128                                                                                                                                                                     
   atmega1280                                                                                                                                                                    
   atmega1281                                                                                                                                                                    
   atmega1284p                                                                                                                                                                   
   atmega128rfa1                                                                                                                                                                 
   at90can128                                                                                                                                                                    
   at90usb1286                                                                                                                                                                   
   at90usb1287                                                                                                                                                                   
   m3000f                                                                                                                                                                        
   m3000s                                                                                                                                                                        
   m3001b                                                                                                                                                                        
   avr6                                                                                                                                                                          
   atmega2560                                                                                                                                                                    
   atmega2561                                                                                                                                                                    
   avr1                                                                                                                                                                          
   at90s1200                                                                                                                                                                     
   attiny11                                                                                                                                                                      
   attiny12                                                                                                                                                                      
   attiny15                                                                                                                                                                      
   attiny28                                                                                                                                                                      
In file included from ../../../../common/macros.inc:39:0,                                                                                                                        
                 from ../../../../crt1/gcrt1.S:38:                                                                                                                               
../../../../include/avr/io.h:404:6: Warnung: #warning "device type not defined"                                                                                                  
../../../../crt1/gcrt1.S: Assembler messages:                                                                                                                                    
../../../../crt1/gcrt1.S:53: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:54: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:55: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:56: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:57: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:58: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:59: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:60: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:61: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:62: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:63: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:64: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:65: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:66: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:67: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:68: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:69: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:70: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:71: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:72: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:73: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:74: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:75: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:76: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:77: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:78: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:79: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:80: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:81: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:82: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:83: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:84: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:85: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:86: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:87: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:88: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:89: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:90: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:91: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:92: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:93: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:94: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:95: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:96: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:97: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:98: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:99: Error: non-constant expression in ".if" statement                                                                                                   
../../../../crt1/gcrt1.S:100: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:101: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:102: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:103: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:104: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:105: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:106: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:107: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:108: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:109: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:110: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:111: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:112: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:113: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:114: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:115: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:116: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:117: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:118: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:119: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:120: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:121: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:122: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:123: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:124: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:125: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:126: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:127: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:128: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:129: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:130: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:131: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:132: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:133: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:134: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:135: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:136: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:137: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:138: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:139: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:140: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:141: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:142: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:143: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:144: Error: non-constant expression in ".if" statement                                                                                                  
../../../../crt1/gcrt1.S:145: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:146: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:147: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:148: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:149: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:150: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:151: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:152: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:153: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:154: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:155: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:156: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:157: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:158: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:159: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:160: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:161: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:162: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:163: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:164: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:165: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:166: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:167: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:168: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:169: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:170: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:171: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:172: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:173: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:174: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:175: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:176: Error: non-constant expression in ".if" statement
../../../../crt1/gcrt1.S:177: Error: non-constant expression in ".if" statement
make[5]: *** [gcrt1.o] Fehler 1
make[5]: Leaving directory `/usr/local/avr/avr-libc-1.6.8/avr/lib/avr25/attiny2313a'
make[4]: *** [all-recursive] Fehler 1
make[4]: Leaving directory `/usr/local/avr/avr-libc-1.6.8/avr/lib/avr25'
make[3]: *** [all-recursive] Fehler 1
make[3]: Leaving directory `/usr/local/avr/avr-libc-1.6.8/avr/lib'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/usr/local/avr/avr-libc-1.6.8/avr'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/local/avr/avr-libc-1.6.8'
make: *** [all] Fehler 2
So wie es aussieht hat er ein Problem mit attiny2313a und hört danach 
auf.
Wie man das beheben soll, keinen Schimmer, sieht eigentlich gewaltig 
nach Bug aus, oder?
Allerdings habe ich von diesem Bug noch nichts gehört.

Lg,
Nils

Autor: Niklas Gürtler (erlkoenig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gentoo hat ein Script namens crossdev zur automatischen kompilation & 
installation von crosscompilern, auch dem avr-compiler (und u.a. einem 
Compiler für Windows - mingw32).
Siehe hier: http://en.gentoo-wiki.com/wiki/Crossdev
Funktioniert bei mir.

Autor: Bingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Nils

Have you patched binutils & gcc ?

Both binutil & gcc requires some AVR specific patches , to define the 
never AVR devices. This is because it takes a loooong time before the 
patches are accepted into the mainstream gcc surce.

The buildscript i linked to , is not "linux distro" specific. So you 
should be able to run it on gento. But the packages in pre-reqs.txt are 
expected to be installed allready (before building) , but as you have 
allready build binutils & gcc. You probably have the required packages 
installed.
And could give the "getfiles" + "getpatches" + "build-avr-noinsight" a 
go.

That would give you a "WinAVR" lookalike , with the same patches as used 
there.

/Bingo

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nils S. schrieb:
> unknown MCU 'attiny2313a' specified

Davon abgesehen, dass du dir wohl Bingo's Script auf avrfreaks.net
mal ansehen solltest, weil er allerlei Patches mit einbaut, die
original nicht vorhanden sind, sollte dieser Fehler eigentlich
nicht auftreten können.  avr-libc's configure-Script enthält Code,
der zuerst testet, ob ein bestimmter MCU-Typ auch wirklich vom
Compiler unterstützt wird.   Da müsste dann sowas stehen wie:
...
checking if avr-gcc has support for attiny2313... yes
checking if avr-gcc has support for attiny2313a... yes

Wenn dort "no" steht, sollte er später auch nicht versuchen, für
einen ATtiny2313A überhaupt zu compilieren, wenn dort aber "yes"
steht, dann sollte das Compilieren wohl auch funktionieren.
Irgendwie scheint mir das bei dir alles sehr inkonsistent zu sein.

Autor: Nils S. (fitec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe in der config.log nachgesehen, tatsächlich gibt es dort den 
Eintrag "checking if avr-gcc has support for attiny2313a" und das 
beantwortet er mit "no", danach kommt die Liste mit allen "Known 
controllers" und von da an meckert er bei jedem folgenden Controller 
(wohl gemerkt zählt er immer die Liste auf welche alle bekannt sind, 
obwohl das nicht mal stimmt).
Trotzdem erzeugt er für alle controller Makefiles.
Da scheint tatsächlich irgendwas schief zu laufen, momentan sehe ich 
allerdings noch nicht was.
Dass ich da was patchen muss glaube ich weniger, davon hätte ich sonst 
etwas gelesen.

Lg,
Nils

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nils S. schrieb:
> Dass ich da was patchen muss glaube ich weniger, davon hätte ich sonst
> etwas gelesen.

Nun gut, dann mach mal weiter, wenn du's uns nicht glaubst.

Also, letzter Tipp: wenn du es schmerzarm haben willst, guck dir den
von Bingo auf avrfreaks.net verlinkten Linux-Buildscript an.

Autor: Nils S. (fitec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

melde mich nun nochmal zurück.
Ich habe in den Tiefen eines irc channels den Tipp bekommen, das 
gcc-4.5.0 irgend so einen Bug hat und empfohlen wird auf 4.5.1 zu 
warten. Daraufhin habe ich den gcc-4.4.4 geladen was der latest stable 
vor 4.5.0 ist.
Mit dem hat nun alles geklappt, ohne Patches ...

Danke für die schnelle und umfangreiche Hilfe :-)

Gruß,
Nils

Autor: Bingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Nils

Can you tell why you doesn't build the well tested & supported , 
avr-gcc-4.3.4 ? Where the patches from the WinAVR maintainer Eric 
Weddington , and the patches from the FreeBSD maintainer Jörg Wunsch , 
can be applied wo. problems ?

The Linux buildscript i linked to is using the FreeBSD patches , and 
because of that , you have quite good support.

In some situations "Newer isn't Better" , and i consider this one of 
them.

It's my understanding that there isn't any AVR devices in 4.4.x or 5.x.x 
that isn't already supported in the above mentioned version , as the 
"main gcc" gets/accepts their device patches from the above.
"Jörg please correct me if i'm wrong here"

Anyway it's nice to hear that you have a working toolchain. And OSS is 
all about "the freedom to choose" , including toolchain versions.

Happy compiling

Bingo (Dänemark)

Autor: Nils S. (fitec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Bingo,

I'm new in gentoo, before I used Debian, there were binary packages for 
everything. So compiling stuff like that myself is new to me and it's a 
lesson I learned, that the newest is not the best ;-)
Well, maybe I should have used better the gcc 4.3.4, it's the latest 
stable gcc for x86 in gentoo, too. But the 4.4.4 supports most of the 
avr controllers and compiling code for avr works :-) so I won't change 
the release of gcc any more.
Unfortunately, the avr-binutils and avr-gcc aren't in the gentoo 
repository (but the avr-libc, that doesn't make sense to me, because it 
depends on avr-gcc and binutils...), so I hope when I have more expert 
knowledge in gentoo, I'll make some ebuilds for the missing gcc/binutils 
for avr.

Regards,
Nils

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du eine neuere Version benutzen willst, solltest du dir zumindest
die Patches, die Bingo genannt hat, mal ansehen.  Es könnte andernfalls
sein, dass du diesen oder jenen wichtigen Bugfix verpasst hast, und
Support für die Xmega-Serie bekommst du (derzeit) ohne externe Patches
gar nicht.

Autor: Bernd Demuth (bdemuth)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hello,

I got the same problem with gcc 4.5.0 & avr-libc. I needed these version 
for the ATtiny4313.

I looked for a patch and found one which added the definitions of a 
couple of new AVR specially ATtiny4313. See:

http://gcc.gnu.org/ml/gcc-patches/2010-04/msg01210.html

If somebody wish I can upload the revised patch.

This patch added the definition of ATtiny2313a so you won't get the 
error anymore. But we aware, you have to correct the patch with "," in 
the middle column of the new definitions.

I didn't found the scripts from bingo. Maybe those scripts would do the 
job too or better.

Where can I find those scripts?

Do they add the new AVR definitions too?

Kind Regards

Bernd

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.