Blog

Search by tag: linux

Chi ha intenzione di sviluppare MIDlet per cellulari utilizzando il WTK 2.5.2 della Sun su una macchina a 64 bit, si troverà nella situazione di non poter avviare l’emulatore, poichè esso si rifiuterà di partire sostenendo che:

java.lang.UnsatisfiedLinkError:
	/home/user/netbeans-6.0/mobility8/WTK2.5.2/bin/sublime.so:
	/home/user/netbeans-6.0/mobility8/WTK2.5.2/bin/sublime.so:
	wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)

Insomma… problemi di compatibilità tra binari a 32 e a 64 bit!

Per risolvere il problema, cominciamo con lo scaricare una JDK a 32 bit;
poi andiamo nella directory dove abbiamo installato WTK (nel mio caso è quello compreso nell’installazione di NetBeans 6) e decomprimiamo il pacchetto:

$ cd ~/netbeans-6.0/mobility8/WTK2.5.2
$ sh /path/to/jdk-6u3-linux-i586.bin
$ ln -s jdk1.6.0_03 jdk32

In seguito, dovremo editare lo script di avvio dell’emulatore WTK:

$ cd ~/netbeans-6.0/mobility8/WTK2.5.2
$ vim bin/emulator

(ovviamente potete utilizzare il vostro editor preferito al posto di vim)

e modificare la prima riga del codice in questo modo:

javapathtowtk=/home/user/netbeans-6.0/mobility8/WTK2.5.2/jdk32/bin/

Adesso potrete finalmente testare le vostre applicazioni J2ME sull’emulatore! :)


Dopo aver aggiornato automaticamente, e senza alcun problema, la mia Kubuntu casalinga dalla release Feisty Fawn alla nuova Gusty Gibbon, mi sono buttato nell’upgrade della distribuzione sul mio PC in ufficio… c’era da aggiornare Fedora dalla versione 6 alla 8 (passando per la 7) utilizzando yum, ma niente mi faceva pensare che sarebbe stato un cambiamento indolore.

Si trovano numerose guide in giro per la rete, tutte che consigliano gli stessi passaggi (cito solo quelli per l’aggiornamento alla versione 8, per la 7 sono analoghi):

Scaricare
fedora-release-8-3.noarch.rpm e fedora-release-notes-8.0.0-3.noarch.rpm.

# rpm -Uhv fedora-release-8-3.noarch.rpm fedora-release-notes-8.0.0-3.noarch.rpm
# yum clean all
# yum -y update

Si è messo a scaricare qualche migliaio di pacchetti e il mattino successivo ho trovato un bel “Completed!” impresso sul terminale. Bene! cioè… Strano! :D

Prima “sorpresina”: la ATI/AMD ha deciso di non supportare più, con i driver ufficiali fglrx, la scheda video installata su questo PC, una FireGL V3100 128 MB, come se ormai fosse da buttare. Mah!
Per far funzionare l’accelerazione 3D si dovrebbero downgradare i driver manualmente, ma la versione precedente supporta fino a Xorg 7.1… quindi avrei dovuto downgradare anche Xorg… e tutte le sue dipendenze ovviamente (credo che si sarebbe portato appresso tutti gli altri pacchetti di Fedora!).
Insomma… risultato finale: niente Compiz! :(
(lo so, può sembrare poco attinente ad un pc da ufficio, ma vi assicuro che alcuni plugin sono utilissimi)

Secondo inconveniente: non funziona Java! Al primo tentativo di far partire NetBeans, il risultato è stato un bellissimo…

java: xcb_xlib.c:50: xcb_xlib_unlock: Assertion `c->xlib.lock' failed.

Identico messaggio per tutte le altre applicazioni Java con interfaccia grafica.

Wow! Che accoglienza!

Ho girovagato un po’ su Google e poi ho trovato la soluzione… basta aprire un terminale e…

# sed -i 's/XINERAMA/FAKEEXTN/g' [path java]/jre/lib/i386/xawt/libmawt.so

( spiegazione: sed è uno “stream editor”, cioè tratta anche i file binari mantenendone l’integrità… gli è stato dato il comando di sostituire (s) tutte le occorrenze (g) della stringa XINERAMA con la stringa FAKEEXTN nel file [..]/libmawt.so, scrivendo direttamente sul file (-i) )

Dopo questa operazione è partito tutto regolarmente.

Per il resto tutto a posto.
C’è da notare che gli unici problemi sono stati causati uno dalla ATI e l’altro dalla Sun, ma mi sento di dire che Ubuntu è completamente su un altro pianeta! :)


July 03, 2007 13:24 - 4 comments

Esattamente 9 mesi dopo il rilascio della versione 11, ieri Patrick Volkerding ha annunciato ufficialmente la nascita della sua nuova creatura… Slackware Linux 12.0!

I toni dell’annuncio sono entusiastici, probabilmente perchè Pat sa benissimo di aver superato alcuni ostacoli che impedivano a Slack di essere considerata unanimemente una distribuzione “a tutto tondo”: ormai tutti volevano Xorg 7.2 per far girare il nuovo Compiz Fusion? E lui ha pacchettizzato Xorg 7.2! Tutti volevano l’automount delle periferiche, per quanto orribile possa sembrare ad uno Unixiano? Ed eccolo!

E’ una distribuzione simplice, leggera e solida, caratterizzata da una stabilità che può essere vitale per un server… e decisamente piacevole per un utilizzo desktop! :) E’ questa la vera potenza di Slack!

Sebbene sia passato con estrema soddisfazione a Kubuntu 64bit sul mio nuovo desktop (ma solo perchè non ha apparenti limiti hardware e quindi posso spremerlo tranquillamente :P), penso che adesso correrò ad installare Slack 12.0 sul Vaietto… già mi mancavano le ricompilazioni “ad-hoc” del kernel ed un sistema pulito pulito come piace a me!

Grazie Pat!


Avete una sola linea ADSL senza router e utilizzate il vostro PC per condividere la connessione a internet con altri computer nella vostra rete? Bene, allora avrete sicuramente passato dei brutti momenti quando dall’altra parte si mettono a scaricare “a palla” e a voi rimangono poche briciole di banda libera! :-S

C’è una tecnica che si chiama traffic shaping che serve proprio per gestire il QoS (quality of service) della rete… si può decidere di dividere la banda totale con dei limiti ben definiti, in modo da garantire una velocità decente di downstream e upstream per tutti.

Il “problema” è che metter su un sistema di shaping è un’operazione luuunga: si devono etichettare i pacchetti con iptables e definire delle classi con tc per poi limitarne il traffico con righe di comando “in arabo” (vedi qui).
Ma io voglio soltanto limitare la larghezza di banda su un’interfaccia, su tutte le porte e su tutti i tipi di pacchetto! Il concetto è semplice, perchè la realizzazione deve essere così complicata?

Probabilmente in un server con Slackware avrei volutamente realizzato lo shaper a manina (questione di stile della distro), ma mentre mi sbattevo la testa al muro per il suddetto motivo, mi è venuta l’intuizione di cercare con Aptitude, il gestore di pacchetti di Kubuntu (evviva la comodità!), la parola “shaping”… e cosa trovo? wondershaper!

In definitiva… bando ai convenevoli… se volete limitare la banda su un’interfaccia di rete, basta fare così:

$ sudo apt-get install wondershaper

$ sudo wondershaper [interfaccia] [downstream] [upstream]

esempio:

$ sudo wondershaper br0 128 640

… per limitare la banda dei client collegati all’interfaccia br0 (da me è il bridge di rete) in download a 640 Kbit (80 KB/s) e in upload a 128 Kbit (16 KB/s).
I valori indicati hanno come riferimento il gateway, quindi l’upstream verso il client è in realtà il downstream del client da internet… esattamente il contrario di quello che si potrebbe pensare a prima vista (infatti sbagliai) :P

Se si vuole rendere l’impostazione permanente anche dopo il riavvio, basta inserire il comando in uno script in /etc/init.d.


Kubuntu… non so davvero da dove cominciare. :o

Come ho già anticipato, computer nuovo => distribuzione Linux nuova. E quale distribuzione è + innovativa di Ubuntu? Credo proprio nessuna! Gli elogi del pubblico e della critica non hanno lasciato spazio a tanti dubbi… era questo il sistema operativo giusto per PCriddu! :D … e luce fu!

Chi mi conosce da tempo saprà benissimo che sono uno Slackwarista ormai da anni, quindi da questo punto di vista ho un occhio critico abbastanza pericoloso per ogni novità che si affaccia all’orizzonte. Ma vediamo il lato positivo: so riconoscere i difetti, ma anche i pregi dei “cambiamenti”… e questo sì che è un cambiamento radicale!

Cosa cerco in Ubuntu? 1) sicurezza nelle installazioni dei programmi pacchettizzati; 2) poche perdite di tempo dietro a librerie e compilazioni; 3) qualcosa che possa sfruttare bene il mio nuovo dual core a 64 bit; 4) qualcosa di BELLO!

Ma andiamo per ordine: ho montato il PC nuovo dotato di scheda madre Asus con chipset NForce 570, processore AMD Athlon 64 X2 Dual Core, scheda video NVIDIA GeForce 7600GT PCI-E e HD Sata2… diciamo che sono quattro ottimi motivi per cui una normale installazione di una distro GNU/Linux potrebbe non andare perfettamente.

Avvio il PC appena montato e purtroppo devo installare prima WinXP (mi spiace, ma la bestiolina avrà bisogno di giocare ogni tanto). Lascio Windows alla fase di post-installazione (se avessi continuato sarebbe comparsa la graffetta animata che mi proponeva il tour delle innovative funzionalità del sistema operativo.. meglio evitare!) e gli dico addio per riavviare con il luccicante DVD di Kubuntu 7.04 Feisty Fawn 64 bit precedentemente scaricato e masterizzato.
Comincia a succedere qualcosa… si avvia (un po’ lentamente, a dirla tutta) una live di Kubuntu! Sarebbe perfettamente utilizzabile per montare dischi e fare operazioni di recovery, quindi lo terrò a mente, ma sul desktop c’è un’icona con scritto “Install”.
Scelgo la lingua italiana, qualche altra impostazione, e poi mi fa partizionare il disco tramite un tool grafico incluso nell’installazione (ho scelto di partizionare manualmente perchè sono abituato così… non ci posso fare niente, l’animo dello Slackwarista rimane :P). Avanti avanti avanti avanti… e comincia a copiare i file… installazione FULL!

Riavvio…

…. non parte niente! Dice che non trova il kernel! :D MA LOL! Fortuna che c’è la live per il recovery! Eheheh!

Avvio la live e cerco di capire cosa c’è che non va…. monto il disco e vedo che effettivamente c’è tutto il filesystem, anche il kernel. Quindi qualcosa non doveva andare nel bootloader… così apro la configurazione di GRUB, do un’occhiata veloce e vedo qualcosa di VERAMENTE strano: praticamente se n’è fregato altamente che ho un hard disk SATA e ha pensato bene di indirizzare le voci del bootloader su hda5 invece che su sda5, come se fosse un IDE! :| Vabuò… correggo e riavvio.
Ma l’utente medio come avrebbe fatto? :-o

Finalmente parte… schermata di login di KDM molto curata graficamente e poi… KDE! Figo! Funziona tutto!
La prima cosa che noto è il NetworkManager vicino all’orologio… click destro e…. caspitaaaaa!! mi ha rilevato automaticamente la scheda wireless e mi elenca tutte le reti raggiungibili!! Su Slackware ci avevo perso non so quanto tempo!! :D Clicco, inserisco la chiave WEP della rete… e sono su Internet! :| Non ho nemmeno dovuto installare i driver… su Windows non è mica così facile, eh! :lol:
Anche la scheda madre è stata riconosciuta immediatamente ed è possibile anche monitorare i sensori della temperatura, velocità delle ventole e voltaggio.

Apro il menù di KDE e lo trovo molto diverso da quello dello stesso KDE, ma di Slack: qui è molto più ordinato e spicca tra tutti la voce “Aggiungi/Rimuovi Programmi” (sarebbe la versione grafica del famoso apt-get che i debianisti tanto osannano): ovviamente ci clicco, inserisco la password, e mi trovo davanti una lista di software divisi per categorie… Grafica, Giochi, Internet… basta soltanto scegliere e far cliccare su un bottone per ritrovarsi il programma pronto per l’uso con l’icona già posizionata nel menù.

Comincio a notare qualcosa: tutti gli utenti possono effettuare operazioni di amministrazione, soltanto inserendo la propria password. L’utente root cessa di avere quell’importanza fondamentale che ha sempre avuto e su Ubuntu praticamente scompare, sotto l’effetto del sistema “sudo”, che comunque consente di tenere ben divise le operazioni comuni da quelle rischiose. Per un sistema desktop ci può anche stare.

Installo i driver (proprietari) NVIDIA sempre con lo stesso metodo, Firefox (c’è solo Konqueror di default), aMule, aMSN, i codec MP3 (che essendo software proprietario non sono inclusi nella distribuzione)…. e Beryl! :| Non so a quale santo bisogna appellarsi per fare una cosa del genere su Slackware, ma qui è tutto automatico…. ho impostato l’avvio automatico, ho fatto ripartire KDE e mi sono ritrovato il desktop tridimensionale che più tridimensionale non si può! Eccoooo… era questo che volevo da quel mostriciattolo che si chiama 7600GT! :D

C’è voluta una ricerchina di 5 minuti con Google per far andare il plugin Flash sotto Firefox. Il motivo è che la Macromedia non ha voluto rilasciare un plugin precompilato a 64 bit, quindi per poter usufruire di YouTube et similia c’è bisogno di far girare il plugin a 32 bit emulato da nspluginwrapper.

Una chicca? Ho installato Counter-Strike Source e l’ho fatto partire sotto emulazione wine! Nessun problema! :lol:
E adesso chi ha + bisogno di Winzozz? :P

Kubuntu?? Promossa a pieni voti! ;)

PS: ovviamente sul portatile rimane la Slack 11… sono arrivato ormai all’equilibrio cosmico!! “Bob”, vedi che rimango fedele? Sii compresivo!