[WIN] Aggiornam. compilatore IDE 0022-0023-1.0 all'ULTIMA VERSIONE ATMEL

Prossimamente arriva pure come aggiornare il compilatore di Arduino con la toolchain di Atmel, è sempre basata su avrgcc, ma è molto più aggiornata di WinAvr che è fermo dal 2010, contiene librerie aggiornate e decisamente migliori, supporta tutti i micro Atmel a otto bit, permette di usare tutta la flash dei modelli più dotati, produce del codice mediamente più compatto e spreca meno risorse, dulcis in fundo viene visualizzato direttamente nell'IDE anche la ram utilizzata.

Stay tuned :slight_smile:

pregasi 4 parole veloci di cosa e' una toolchain ed i vari lavori che compie sarebbero utili a chi legge velocemente
thanks

Testato:
pregasi 4 parole veloci di cosa e' una toolchain ed i vari lavori che compie sarebbero utili a chi legge velocemente
thanks

La toolchain è l'insieme di programmi e librerie, i tools, usati per passare dal sorgente all'eseguibile, l'uscita di un tool è l'input di un altro, ovvero sono concatenati (chain = catena, concatenamento) pertanto abbiamo vari programmi che lavorano in cascata alla stregua di una "catena di montaggio virtuale".

thanks,
sempre velocemente descrivere i vari step intermedi e relative cartelle dei files ?

tipo il compilatore si cvhiama xxx ed il file viene salvato in zzz, il linker si chiama yyy ed il file va in tot

arigrazie a nome di tutti :slight_smile:

Testato:
tipo il compilatore si cvhiama xxx ed il file viene salvato in zzz, il linker si chiama yyy ed il file va in tot

Se compili con Arduino con l'opzione verbose vedi tutti i passaggi intermedi, quali programmi sono invocati e dove vengono messi i file temporanei di tutto il processo della compilazione.

Visto che ci sto combattendo da un mese, se qualcuno di voi sa come aggiornare la toolchain anche su Linux farebbe una cosa gradita.... ho seguito una guida su Avr-Freaks in cui c'era uno script che scaricava e compilava tutta la toolchain ma poi mi sono trovato con una cartella contenente centinaia di sotto-cartelle con librerie ed eseguibili... 'ndo ca....spita si devono poi infilare? Non posso crearmi a mano i pacchetti, non so dove vanno distribuiti tutti quei file nel sistema.. O su Linux è come su Windows, che cioè l'IDE prima guarda nella cartella dove risiede e poi si affida ai file presenti sul sistema?

leo72:
Visto che ci sto combattendo da un mese, se qualcuno di voi sa come aggiornare la toolchain anche su Linux farebbe una cosa gradita....

Ma Linux non era il sistema operativo perfetto e senza nessun problema ? :grin:

astrobeed:

leo72:
Visto che ci sto combattendo da un mese, se qualcuno di voi sa come aggiornare la toolchain anche su Linux farebbe una cosa gradita....

Ma Linux non era il sistema operativo perfetto e senza nessun problema ? :grin:

Chi usa Windows dovrebbe intanto pensare ai propri, di problemi, e poi parlare di quelli degli altri :stuck_out_tongue:
Detto questo, siccome gli sviluppatori dei vari software (vedi avr-gcc, binutils-avr ecc...) innovano ma riempiono di bug (vedi tutte le mie passate lamentele) e siccome avr-gcc 4.3.5 avrebbe il bug dei 64K indirizzabile (brutta cosa, se si pensa al 1284), avevo deciso di scaricarmi la toolchain direttamente dal sito di Atmel. Ma a 'sto punto non so dove mettere tutta quella roba.

Astro ho appena scoperto che il caro tasto shift per il verbose non funziona sulla 1.0 :slight_smile:

trovi un flag show verbose output.. in file / preferences :stuck_out_tongue:

@Leo tu per aggiornare dovresti usare gli script di Bingo600 (utente di AvrFreaks)
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=42631

E' solo una mia impressione o è un pochino più veloce la fase di compilazione, con l'aggiornamento ? :astonished:

amario57:
E' solo una mia impressione o è un pochino più veloce la fase di compilazione, con l'aggiornamento ? :astonished:

Difficile stabilirlo, ho fatto una prova al volo compilando MultiWii 1.9 sia con la 0023 che con la 0023 aggiornata e il tempo, misurato a mano con il cronometro, mi risulta di 2.7 secondi per tutti e due, se c'è una differenza è molto piccola e non apprezzabile con misurazioni manuali.

mauroz:
trovi un flag show verbose output.. in file / preferences :stuck_out_tongue:

si, lo avevo letto in giro, pero' hanno volutamente tolto la funzione o e' un bug ?
era comodissimo usare semlicemente Shift

Testato:
lo avevo letto in giro, pero' hanno volutamente tolto la funzione o e' un bug ?
era comodissimo usare semlicemente Shift

Si, con la 1.0 è necessario vistare l'apposito flag nella config per avere il modo verbose, in compenso è possibile fare distinzione tra compilazione e upload.
La cosa divertente è che se setti il flag nella 1.0 e condividi la stessa cartella delle applicazioni, dove si trova "preferences.txt", con la 0023 anche in questa rimane attiva la modalità verbose selezionata.

ma anche su 0.23 si scinde il log Verify dal log Upload perche' lo shift e' attivo in entrambi i comandi, forse intendi altro ?

non ha senso toglierlo, chi non sa che esiste non preme shift, perche' eliminare il comando ? dici che e' voluto ?

BrainBooster:
@Leo tu per aggiornare dovresti usare gli script di Bingo600 (utente di AvrFreaks)
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=42631

Li proverò

EDIT:
leggendo quel lungo thread mi pare di capire che comunque quegli script compilano la versione 4.5.1 che è ancora afflitta dal bug riguardante il problema di micro con Flash >64K, problema risolto nella 4.6.1. Insomma, è un cane che si morde la coda: risolvi un bug ma ne lasci attivo un altro: se risolvi quest'ultimo ti torna fuori il primo. E questo vale per tutte le versioni di avr-gcc, sia per Linux che per Windows.

la presenza dei bugs è l'unica cosa sicura nei software :grin:
ti conviene comunque aggiornare il toolchain all'ultima versione possibile no?

BrainBooster:
la presenza dei bugs è l'unica cosa sicura nei software :grin:
ti conviene comunque aggiornare il toolchain all'ultima versione possibile no?

Con le versioni successive alla 4.3.5 lo sketch ArduinoISP viene compilato NON funzionante. Con le versioni 4.5.x ci sono i problemi legati al famoso bug del delay, che non funziona per via di una errata inizializzazione dei registri se non si mette una dichiarazione di una variabile globale all'inizio dello sketch. Sulle versioni 4.6.x c'è il problema che alcune lib del core che contengono diciture non più riconosciute (non mi ricordo esattamente quali ma mi pare che siano dei tipi di dati) e vanno modificate per farle funzionare, poi con le versioni ancora più recenti compare il problema di dover aggiornare anche binutils-avr, ed anch'esso ha i suoi czz e mazzi. Insomma, non è una toolchain, è una via crucis :stuck_out_tongue:

leo72:

BrainBooster:
@Leo tu per aggiornare dovresti usare gli script di Bingo600 (utente di AvrFreaks)
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=42631

Li proverò

Erano gli script che avevo già provato. NON creano pacchetti deb ma compilano la toolchain, poi ti ritrovi nel dubbio: dove la metto 'sta roba??
Su Windows è facile, prendi e la sostituisci alla toolchain distribuita con l'IDE. La mia domanda di qualche post sopra era: questa cosa funziona anche con la versione per Linux?