Ncurses per Fox Board

Questa guida descrive i passaggi da seguire per cross-compilare le NCurses, delle librerie di funzioni software che gestiscono il display di un'applicazione su un  terminale a caratteri, utilizzabile dalla la Fox Board.

 

Le ncurses sono delle librerie di emulazione software che gestiscono un display di un'applicazione su un terminale  a caratteri.  Utilizzano il formato terminfo e termocap, sostenendo pad a più colori mettendo in evidenza i caratteri e le forme creando delle mappatura dei tasti. Il codice è stato sviluppato sotto GNU/ linux. Per molto tempo è stato usato con su OpenBSD e su FreeBSD e NetBSD. La distribuzione comprende le librerie e delle utilità tra cui un compilatore terminfo e termcap, tra le utilità c'è: tic, ocmp, tput, tset, un tool di conversione captoinfo.

La guida è riferita alla Fox Board con kernel compilato con "Phrozen SDK made by John Crispin" offerto di default dalla Acme System.

Per poter cross-compilare l'applicazione è necessario avere tutto l'occorrente già pronto sul proprio computer. Per installare l'SDK in ambiente Linux o Windows si può fare riferimento ad uno dei seguenti metodi: metodo 1 Linux e metodo 2 Win. In particolare questa guida fa riferimento ad un'installazione Linux tipica, di preciso Fedora 9. Pertanto verranno utlizzati comandi appartenetni al mondo Linux, nel caso non si ha ancora acquisito una buona padronanza con i comandi da shell, è consigliato leggere qualche guida presente in rete.

Preparato tutto l'occorrente, compreso l'SDK, bisogna procurarsi il source code delle NCurses, essendo tali librerie soggette a licenza GNU è sempre possibile scaricare dalla homepage il codice sorgente, in genere i file vengono distribuiti in archivi zippati, quindi bisogna proseguire con la decompressione e la copia in una cartella a nostra scelta, per avere tutto a portata di mano conviene usare questo percorso /../devboard-R2_01/apps/NCurses, dove con /../ si fa riferimento ad un percorso generico del vostro SDK, lavorare direttamente nella directory dell'SDK perme di impostare le variabili d'ambiente e continuare la compilazione all'interno dello stesso.

Prima di poter compilare un qualsiasi sorgente in genere bisogna accertarsi di risolvere tutte le dipendenze, in questo caso le librerie non necessitano nulla oltre i componenti standard già compilati di default dall'SDK, per procedere con il porting si devono seguire i prossimi passaggi da linea di comando digitando accuratamente e dove necesario sostituire /../ con il vostro percorso:

 

/..# cd  devboard-R2_01

/devboard-R2_01# .  init_env

/devboard-R2_01#  cd  apps

/devboard-R2_01/apps#  cd  NCurses

/devboard-R2_01/apps/NCurses#  ./configure --build=i686-linux-gnu --host=cris-axis-linux-gnu --prefix=/../devboard-R2_01/apps/ncurses2 --without-shared --with-normal --without-debug --without-profile --with-shared --enable-termcap --without-curses-h --without-termlib --enable-getcap --enable-colorfgbg --enable-bsdpad --disable-home-terminfo --disable-database --disable-overwrite --without-hashed-db

/devboard-R2_01/apps/NCurses#  make

/devboard-R2_01/apps/NCurses#  make install

 

Terminati i passaggi precedenti se tutto è andato bene si ottengono le NCurses compilate in modalità statica e dinamica, eseguibili dal processore della Fox Board, architettura etrax, in particolare con l'impostazione --prefix=... si è scelto di non installare le librerie in un percorso standard, ma in un percorso da noi dichiarato, questo porta due vantaggi, primo evita di sostituire file dell'installazione Linux sul pc con file per la Fox Board provocando malfunzionamenti, due di avere sempre disponibile una copia delle librerie cross-compilate senza il rischio che vengano danneggiate.

A questo punto la fase di porting delle NCurses è terminata, ora manca da compilare i programmi che necessitano di tali dipendenze e di ricreare l'immagine per la Fox Board. Dei programmi di esempio sono Tmsnc e Lynx.

 

Login

Online

No
 35 visitatori online