mercoledì 26 settembre 2012

Installazione minima per Wordpress con Lighttpd



Per avere un server su cui far lavorare Wordpress in pochi passi si puo' procedere cosi'

apt-get install mysql-server mysql-client
apt-get install lighttpd
apt-get install php5-cgi php5-curl php5-mysql

si modifica
vi /etc/php5/cgi/php.ini

aggiungendo 

cgi.fix_pathinfo = 1
 
si modifica
vi /etc/lighttpd/lighttpd.conf


aggiungendo php5 fastcgi

server.modules              = (
            "mod_access",
            "mod_alias",
            "mod_accesslog",
            "mod_fastcgi",
#           "mod_rewrite",
#           "mod_redirect",

ed aggiungendo alla fine

fastcgi.server = ( ".php" => ((
                     "bin-path" => "/usr/bin/php5-cgi",
                     "socket" => "/tmp/php.socket"
                 ))) 


infine si riavvia il server per caricare le modifiche

/etc/init.d/lighttpd restart

per la cronaca e' stato scelto lighttpd perche' pesa solo 350 Kb

martedì 25 settembre 2012

Eclipse CDT JUNO : Compilare in C++ con Autotools

Creare delle applicazione in C++ usando Eclipse CDT non e' esattamente banale... come esempio si riporta la compilazione del sorgente del precedente post sul calcolo di Pi Greco
Per prima cosa (ed  e' forse il passo che si sbaglia piu' facilmente) si deve creare un nuovo progetto e selezionando Executable dalla lista di sinistra

Successivamente si clicca destro in Project Explorer sul nome del progetto Properties
Quindi C/C++ Build/Settings e si scende fino a leggere GCC C++ Linker/Libraries


Nella finestra a destra Libraries (-l) si clicca su simbolo + verde e si inserisce la libreria che si vuole linkare (escludendo il -l iniziale) 
 alla fine deve risultare cosi
Per terminare CTRL+B per ricostruire
In alcuni casi, nonostante un Project Clean, non viene risolta la nuova libreria per cui ci saranno degli errori segnalati nel codice..si risolve chiudendo e riaprendo Eclipse
Il programma eseguito

Leggere Rss Feed in modalita' testo con NewsBeuter

Le istruzioni sono riprese da questo sito

Per leggere i Feed Rss con una interfaccia leggera si puo' utilizzare NewsBeuter che si trova gia' pacchettizzato all'interno di Debian

Per iscriversi ad un feed si puo' importare un file opml (newsbeuter -i file.opml) che si genera dall'esportazione di Google Reader (io ho fatto cosi') oppure si puo' creare ed editare il file urls che si deve mettere nella direcotory (./newsbeuter) con il formato di una url per riga di testo

Elenco dei feed in abbonamento

Elenco dei post
creando il file ./newsbeuter/config si possono definire alcuni parametri tra cui il tempo di refresh

#ricarica feed in automatico
auto-reload yes
#ogni m minuti
reload-time 15
#conserva massimo n articoli per feed
max-items 150
#nell'elenco mostra anche i feed letti
show-read-feeds yes
#pulisci la cache quando esci
cleanup-on-quit no

Leggere GMail via testo con Alpine

Leggendo qua e la', ho scoperto che Google fornisce ai propri dipendenti una distribuzione Linux (sembra una Ubuntu) con cui leggere la posta su GMail in formato testuale quando la connessione di rete presenta dei problemi...in particolare si parlava di Pine

Ricordo che attorno all'anno 2000 usavo Pine sotto RedHat 7 come client di posta e mi e' venuta voglia di riprovarlo

Primo ostacolo: per problemi di licenza Debian non ha un pacchetto di Pine bensi' di Alpine, un client testuale del tutto simile all'originale

Istruzioni riprese dal sito http://www.wijeyesakere.com/tech/alpine/ 

per configurare il programma si deve andare in Setup/CollectionList/AddCltn ed inserire i seguenti valori

imap.gmail.com/ssl/user=USERNAME@GMAIL.COM

Poi si torna al menu principale/Setup Options/ e si impostano
SMTP server: smtp.gmail.com/novalidate-cert/user=USERNAME@GMAIL.COM/ssl
Inbox Path: imap.gmail.com/novalidate-cert/ssl/user=USERNAME@GMAIL.COM

Mail InBox di GMail
Folders di GMail

Download di allegato da GMail




lunedì 24 settembre 2012

Compilare con GEdit

Si puo' modificare Gedit per poterlo utilizzare come una IDE veloce per la programmazione mediante l'utilizzo dei plugins che possono essere installati mediante


apt-get install gedit-plugins

Usando il menu' Modifica/Preferenze si giunge al menu sottostante in cui nel tab Plugin sono incluse le estensioni installate che possono essere rese attive cliccando sulla checkbox
Per la compilazione si devono attivare gli Strumenti Esterni
Elenco dei plugin installati

Configurazione di Strumenti Esterni
Cliccando su Configura Plugin si puo' vedere che questo si attiva mediante la combinazione CTRL+F8

Per comodita' si puo'attivare anche il plugin Terminale che fa comparire una shell nella finestra di Gedit

Gedit con finestra di shell

Per terminare quindi si inserisce il file sorgente da compilare insieme al suo Makefile e con la pressione del tasto CTRL+F8 questo viene compilato

Autotools per creare installazioni

Per prima cosa e' stato aggiunto un file make cosi' definito

Makefile
-------------------------------------


all:  
g++ -Wall -O3 -lgmp -o pi main.cpp

clean:
rm -f main *.o

-------------------------------------
dopo di cio' si lancia il comando autoscan che genera il file configure.scan
dato che non si devono fare modifiche a mano si puo' procedere rinominandolo

mv configure.scan configure.ac

a questo punto si puo' lanciare il comando autoconf che genera il file configure
si rinomina quindi 

mv Makefile Makefile.in

lanciando il comando ./configure si avra' che il programma viene compilato ma viene anche segnalato che manca il file config.h.in (il file config.h serve a realizzare degli script di compilazione esportabili su piu' piattaforme) 

su lancia quindi il comando autoheader che crea il file config.h.in (config.h e' generato da ./configure)

per mantenere traccia della presenza del file config.h si deve inserirlo nell'header (se si intede usare autotools e' bene metterlo dall'inizio altrimenti si deve reiniziare tutta la procedura a partire da autoscan)
----------------------------------
#include <cstdlib>
#include <iostream>
#include <iomanip>
#include <gmp.h>
#include  "config.h"
using namespace std;

int main()
{
mpf_t a;
----------------------------------

al termine si puo' compilare il tutto con ./configure

Qualche tempo fa KDevelop includeva la possibilita' di usare autotools mentre al momento in cui sto scrivendo usa solo CMake. CodeBlocks  a causa del fatto di essere multipiattaforma non ha mai sviluppato l'utilizzo di autotools. Al momento l'unica IDE evoluta che faccia uso di autotools in modo automatico e' Anjuta

Linux su HP 5000i Thin Client

Il calcolatore su cui ho provato ad installare Linux questa volta e' una macchina piuttosto particolare ovvero un  Thin Client HP 5710 con processore Transmeta Efficeon da 1.2 GHz, unita' a disco Flash da 512 Mb ed una Ram da 512 Mb
C'e' una ricca dotazione di porta di Input/Output tra cui 4 USB, una seriale DB9, una parallela piu' un ingresso Rj45 per la rete

Nel primo tentativo di installare Debian, ovviamente via USB Key data l'assenza di Cd-rom, il primo problema e' arrivato al momento di partizionare il disco: il partizionamento automatico si e' rifiutato di partire perche' il disco era troppo piccolo e perche' era impossibile dimensionare la partizione di swap. Ho configurato manualmente una sola partizione di root che prende tutto il disco. Il sistema di base e' stato quindi copiato correttamente ma al momento di installare il Lilo od il Grub non c'e' stato verso di andare avanti probabilmente per problemi con il disco Flash

Provando ad usare Ubuntu i problemi sono nati subito perche' l'installer si ostina a ricercare un cdrom che di fatto non esiste (l'immagine e' stata portata sulla chiave mediante unetbootin..non so di chi sia la colpa)

Sono passato quindi alle Live Cd...
Slitax parte ma nel momento in cui il Live Cd cerca l'unita' a disco flash va in Kernel Panic
CrushBang non parte proprio (schermo nero)

Debian Live Cd 6.04 funziona proprio bene come Live se si usano le opzioni 486 failsafe, 686 e 686 failsafe (stranamente non funziona la modalita' 486 normale) ma ovviamente si rifiuta di installarsi sull'unita' flash

Debugger integrato ESP32S3

Aggiornamento In realta' il Jtag USB funziona anche sui moduli cinesi Il problema risiede  nell'ID USB della porta Jtag. Nel modulo...