@Menniti:
se compilando con l'IDE 1.0 ti esce fuori l'errore sull'arduino.h vuol dire che stai usando uno sketch che richiama una libreria non compatibile con l'IDE 1.0
@tutti:
Per dovere di cronaca vi riporto il mio intero periodo, non la singola frase:
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.
L'affermazione non si riferisce tanto a Linux o Windows quanto al tipo di toolchain usata.
Se usate la toolchain 4.3.5 non patchata c'è per tutti il bug del limite dei 64 kB, se ne è discusso ampiamente. E' proprio da un post di Mike che la questione è venuta fuori.
Quindi Linux o Windows o Mac, uno sketch che indirizza dati oltre quella soglia è destinato a fallire.
Se per risolvere tale problema si usa una versione successiva, compaiono altri bug, e questo vale solo per Linux per un semplice motivo: perché il team di Arduino ha finora distribuito la toolchain allegata all'IDE solo con la versione Windows. Se scaricate una toolchain Avr aggiornata e la usate così cosm'è, senza patch Atmel, anche voi utenti Windows avete gli stessi problemi che ho io perché i bug che ho nel tempo segnalato su questo forum riguardano il sorgente stesso della toolchain, quindi che si compili su Linux o Windows i bug restano. Le patch Atmel correggono proprio questi bug, ad esempio l'errore del delay che ho citato.
L'unica soluzione CERTA a tutti questi problema è la strada che ha seguito Astro, è la strada che ha seguito Bingo660 su AvrFreaks, è la strada che alla fine ho seguito anche io: scaricarsi i sorgenti della toolchain, applicare le patch di Atmel e compilare quella toolchain. Alla fine viene fuori una versione basata su avr-gcc 4.5.1, quindi non recentissima, ma
funzionante.
L'ArduinoISP con versioni più recenti della toolchain continua a non funzionare, segno evidente che le patch Atmel sono al momento indispensabili.
Per dovere di cronaca dico che se ho tempo domani provo la toolchain basata su avr-gcc 4.7.0, e vediamo se risolve tutti i problemi riguardanti i bug menzionati senza bisogno delle patch di Atmel.