[OT] Eagle 6.1.0 su Linux

Oggi volevo provare il nuovo Eagle 6.1.0 ma ho avuto una sgradita sorpresa: su Kubuntu 11.04 l'installer non si è avviato dandomi un errore di libreria mancante, precisamente la libpng1.4. Scartabellando nei pacchetti ho scoperto che Natty ha la libpng1.2.... :roll_eyes:

Quindi, sono costretto a tenermi la 11.04 perché altrimenti ho i problemi con la toolchain Avr ma sono anche obbligato ad aggiornare il sistema se voglio usare questo tool... non mi andava di compilare a mano, non vorrei incasinare il sistema come normalmente succede quando si toccano librerie linkate da tante parti.

Hai provato con wine?

Non voglio usare Wine perché non voglio file .exe sul mio sistema :stuck_out_tongue:

Non so perchè ma me lo immaginavo... e sono d'accordo in pieno con la tua scelta :slight_smile:

Tu che SO hai?

Come te, Kubuntu 11.04 su tutti i pc, va da dio

Bene. Allora, se ti ricordi tempo fa parlai dei problemi dello sketch ArduinoISP che, compilato su K/X/Ubuntu 11.10, non funzionava. Giorni fa sul thread internazionale, mi hanno dato questa risposta:

I found a reasonable work-around for this problem. This now works for me on Ubuntu 11.10 64-bit, where it did not previously, simply by changing the baud rate to 9600. Also it works to change the SERIAL_BUFFER_SIZE to 72 in HardwareSerial.cpp.

It seems that the ISP is hanging in fill() getting a buffer overrun.

Sembrerebbe che abbassando la velocità a 9600 (bisogna modificare lo sketch e il bootloader) si possa risolvere.
Io ora non so se la cosa funziona anche con i sistemi a 32 bit (io uso questi), sarebbe da provare in virtuale, come ho fatto alcune settimane fa con Suse 12.1: compilare lo sketch ArduinoISP su una macchina Ubuntu 11.10 e poi passarla all'host, metterla sull'Arduino e provare. Se funziona, si potrebbe aggiornare. Certo, passare da 19200 a 9600 rode un po' (la velocità dell'ISP si dimezza) però se non ci sono altre strade...

leo72:
Bene. Allora, se ti ricordi tempo fa parlai dei problemi dello sketch ArduinoISP che, compilato su K/X/Ubuntu 11.10, non funzionava. Giorni fa sul thread internazionale, mi hanno dato questa risposta:

Linux Kernel 3.0 stopped ArduinoISP working - #54 by system - IDE 1.x - Arduino Forum

I found a reasonable work-around for this problem. This now works for me on Ubuntu 11.10 64-bit, where it did not previously, simply by changing the baud rate to 9600. Also it works to change the SERIAL_BUFFER_SIZE to 72 in HardwareSerial.cpp.

It seems that the ISP is hanging in fill() getting a buffer overrun.

Sembrerebbe che abbassando la velocità a 9600 (bisogna modificare lo sketch e il bootloader) si possa risolvere.
Io ora non so se la cosa funziona anche con i sistemi a 32 bit (io uso questi), sarebbe da provare in virtuale, come ho fatto alcune settimane fa con Suse 12.1: compilare lo sketch ArduinoISP su una macchina Ubuntu 11.10 e poi passarla all'host, metterla sull'Arduino e provare. Se funziona, si potrebbe aggiornare. Certo, passare da 19200 a 9600 rode un po' (la velocità dell'ISP si dimezza) però se non ci sono altre strade...

Ottima notizia! Appena ho un attimo di tempo metto un hard disk libero faccio una installazione solo per provare tanto si fa subito a installare gli OS. Posso mettere anche il 64 bit.
Comunque sia non è che sono molto entusiasta della 11.10, quando la installai appena uscita ho avuto rogne su rogne e l'ho tolta subito.

@legacy:
è una questione di "simpatia". C'è a chi non sta simpatica Apple... a me!, c'è a chi non sta simpatica Microsoft... a me) :stuck_out_tongue:
Uso Linux per una questione ideologica, usare Wine per farci girare software per Windows è un controsenso, tanto vale installi Windows no?
PS:
boccio anche la soluzione del rootfs, non voglio riempirmi l'HD

@pelletta:
che problemi hai avuto?

ora scarico e provo su ubuntu 10.04 LTS (non aggiorno finchè non avrò un'altra LTS)

superlol:
ora scarico e provo su ubuntu 10.04 LTS (non aggiorno finchè non avrò un'altra LTS)

Che cosa provi? ArduinoISP ci va (già provato qui a lavoro), libpng non credo ci sia in versione 1.4.

leo72:
...
@pelletta:
che problemi hai avuto?

Tanti, a partire dall'installazione, si inchiodava diverse volte soprattutto quando faceva gli aggiornamenti iniziali; all'avvio diceva che non trovava riferimenti alle cartelle personali, in particolare kmail (che tra l'altro non uso) dava sempre avvisi di errore all'avvio. Il file manager Dolphin mi crashava in continuazione appena dividevo la vista delle cartelle.
Poi dopo che ho appurato il fatto che con arduino non potevo usare la tecnica ISP non ho cercato nemmeno di risolvere tutti i vari problemi, downgrade alla 11.04 e sto felice e contento.

Edit: era un 64 bit

leo72:

superlol:
ora scarico e provo su ubuntu 10.04 LTS (non aggiorno finchè non avrò un'altra LTS)

Che cosa provi? ArduinoISP ci va (già provato qui a lavoro), libpng non credo ci sia in versione 1.4.

provo eagle, arduino IDE devo ancora scaricarlo (ho reinstallato linux da poco) e l'ho solo in versione winzozz (dual boot, causa video editing con software che su linux non girano e non vi sono equivalenti abbastanza "potenti" purtroppo)

ok esiste solo libpng12 :*

@legacy:
la differenza fra me e te è che tu ci lavori con queste cose, ed il 95% dei simulatori/programmatori/ambienti di sviluppo/ecc.. è per Windows, lo so.
(S)fortunatamente questo per me è un hobby per cui ancora posso scegliere se usare oppure no una certa cosa. Finché posso, cerco di usare Linux: a me basta ed avanza.
Il giorno che Atmel si scorderà di questo SO beh... pace all'anima sua, cambierò fornitore :smiley:

@pelletta:
strano, io tutti questi problemi non li ho avuti, non credo dipenda solo dai 32 bit.

@superlol:
te l'avevo detto :wink:

superlol:
provo eagle, arduino IDE devo ancora scaricarlo (ho reinstallato linux da poco) e l'ho solo in versione winzozz (dual boot, causa video editing con software che su linux non girano e non vi sono equivalenti abbastanza "potenti" purtroppo)

OT: Kdenlive ormai ha poco da invidiare ai vari software tipo premiere

OT: usa avid studio ultima versione con svariati plugin e fidati.. da il "pagone" a tutti..

tornano in topic ho trovato una guida, ora vedo se funziona ed in caso posto la "traduzione" :wink:

l'ho fatto funzionare se a qualcuno interessa...
vediamo pure se ho capito XD

il problema è la mancanza delle librerie quindi noi possiamo installarle :stuck_out_tongue:

inanzitutto non possiamo installare eagle senza le librerie quindi come facciamo? beh "facile".

iniziamo col scaricare eagle

$ wget ftp://ftp.cadsoft.de/eagle/program/6.1/eagle-lin-6.1.0.run

il file run è un file che si "autospacchetta", noi possiamo farlo manualmente, con un comando:

$ sed -e '1,/^__DATA__$/d' eagle-lin-6.1.0.run > eagle-lin-6.1.0.tar.bz2

perfetto, ora abbiamo un file archivio contenente ciò che avrebbe installato eagle-lin-6.1.0.run

ora dunque lo spacchettiamo

$ tar xvjf eagle-lin-6.1.0.tar.bz2

avremo dunque eagle in una cartella.. ma attenti perchè non abbiamo ancora installato le librerie
entriamo nella cartella contenente i file di lancio di eagle ovvero

$ cd eagle-6.1.0/bin

quindi scarichiamo le librerie

$ wget http://dl.dropbox.com/u/4295670/eagle_libs.tar.bz2

le spacchettiamo come al solito

$ tar xvjf eagle_libs.tar.bz2

ora rinominiamo il file eagle in eagle.origin in questo modo potremo poi andare ad includere le librerie internamente alla cartella bin del programma e non facendo riferimento alle librerie di sistema

$ mv eagle eagle.orig

ora creiamo un file eagle che tenga in considerazione (lanciando eagle.origin) che le dipendenze di cui ha bisogno sono anche nella cartella bin

$ echo 'LD_LIBRARY_PATH="$(dirname "$0")" "$(dirname "$0")/eagle.orig" $@' > eagle

infine rendiamo il file eagle eseguibile con

$ chmod a+x eagle

FINE. lanciando il comando ./eagle avremo a disposizione il nostro programma XD

ATTENZIONE!! non abbiamo installato le librerie nel sistema ma semplicemente le abbiamo prese da internet e messe nella cartella bin del programma in modo da soddisfare le sue richieste, se vorremo modificare il programma aggiornandolo in teoria (ora provo visto che erroneamente ho installato la 6.0) dovrete:

$ wget ftp://ftp.cadsoft.de/eagle/program/... ecc... riferendosi al file nuovo
$ sed -e '1,/^__DATA__$/d' eagle-lin-6.x.x.run > eagle-lin-6.x.x.tar.bz2 modificando opportunamente le x dove richiesto
$ tar xvjf eagle-lin-6.x.x.tar.bz2 leggi nota sopra
$ cd eagle-6.x.x/bin
$ wget http://dl.dropbox.com/u/4295670/eagle_libs.tar.bz2
$ tar xvjf eagle_libs.tar.bz2
$ mv eagle eagle.orig
$ echo 'LD_LIBRARY_PATH="$(dirname "$0")" "$(dirname "$0")/eagle.orig" $@' > eagle
$ chmod a+x eagle

parte aggiunta:
renderlo eseguibile da comando direttamente
ora per lanciare eagle dovremmo sempre andare nella cartella appena fatta e lanciarlo, certo un lanciatore dal desktop è fattibile ma voglio renderlo pratico a tutti.
per fare ciò ci servirà il permesso di su

dunque:

$ sudo su

comando base col cui diventiamo i padroni indiscussi della macchina, attenti perchè in questa modalità non vi sono protezioni di alcun tipo il che significa che è pericoloso per il sistema

quando noi lanciamo un programma da terminale tipo

$ gedit

in realtà è come se stessimo facendo

$ /usr/bin/gedit

quindi come facciamo ad avviare eagle allo stesso modo? semplice creiamo un file che punti alla cartella creata prima.

# echo '"$(pwd)/eagle"' > /usr/bin/eagle

con $(pwd) nel file verrà messo l'output del comando pwd che è esattamente la directory in cui siamo.
come prima rendiamo esecutibile ad aperto a tutti il file /ust/bin/eagle con

# chmod a+x /usr/bin/eagle

quindi possiamo uscire dalla modalità super user con

# exit

torneremo utenti normali e potremo verificare la corretta "installazione" semplicemente lanciando il comando

$ eagle

spero di essere stato utile :wink:

Ah ah ah! Sei un grande. Domani provo XD

leo72:
Ah ah ah! Sei un grande. Domani provo XD

prego :stuck_out_tongue:

più che altro ho sgooglato un po', fin'ora ho avviato solo la schermata principale e funziona, il programma per intero non so se vada al 100%...

anche se nella teoria dovrebbe.

la paura più grande è che magari il ragazzo decide di eliminare i files da http://dl.dropbox.com/u/4295670/eagle_libs.tar.bz2

Li ho già tirati giù :wink: