Strumenti Utente

Strumenti Sito


documentazione_3di_riservata:highway:appunti_hicgi

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

documentazione_3di_riservata:highway:appunti_hicgi [2009/09/25 17:32] – creata rtirabassidocumentazione_3di_riservata:highway:appunti_hicgi [Data sconosciuta] (versione attuale) – eliminata - modifica esterna (Data sconosciuta) 127.0.0.1
Linea 1: Linea 1:
- 
- 
-Preparazione di 'hicgi' & C. in ambienti di tipo unix partendo dallo 'zip' dei sorgenti presenti in RightWay 
- 
- 
- 
- Prima della lista di operazioni per per compilare i sorgenti e ottenere 'hicgi' e C., una lista di osservazioni in ordine sparso: 
- 
-  -i sorgenti sono strutturati per essere contenuti in un direttorio "script" che però tipicamente non è compreso negli 'zip' dei sorgenti presenti in RightWay; si dovrà quindi creare il direttorio "script" e ivi decomprimere i sorgenti; 
-  -i sorgenti sono quasi certamente stati preparati in una piattaforma di tipo Win32 con fine riga di tipo "\x0d\x0a"; i file dello 'zip' dei sorgenti che interessano, nelle piattaforme di tipo unix, sono solo di tipo testo; anche se potrebbe non essere necessario, si suggerisce quindi di estrarre i sorgenti indicando che tutti i file sono di tipo testo (opzione "-aa" di "unzip"); 
-  -oltre ad un banalissimo "makefile" principale, direttamente dentro "script", i sorgenti di 'hicgi' prevedono una coppia di "makefile" effettivi dentro a "script/umak" ("script/umak/makefile", per gli eseguibili, e "script/umak/makeso", per le (in realtà, una sola) librerie dinamiche) e una serie di file di supporto ai due makefile principali 
-  -la selezione della piattaforma di compilazione, nel caso del makefile relativo agli eseguibili, avviene in "script/umak/makeutil"; nella parte iniziale di tale file si trova una serie di righe, ognuna delle quali preposta ad assegnare un alla variabile "WHAT" - che indica la specifica piattaforma di compilazione - un opportuno valore; ovviamente una - e solo una - delle righe di assegnazione per "WHAT" non deve essere commentata 
-  -si noti che il meccanismo di cui al punto precedente è del tutto analogo a quello usato per 'xw' & C. tranne che non è presente un meccanismo di riconoscimento automatico per la piattaforma; 
-  -ancora per quanto riguarda il makefile relativo agli eseguibili, la selezione della modalità di compilazione - "debug" o "release" - è determinata dalla variabile "MODE", come definita all'inizio di "script/umak/makefile"; quindi si commenti/de-commenti opportunamente le due righe di definizione; 
-  -nel caso, invece, del makefile relativo alle librerie dinamiche, sia la piattaforma che la modalità si impostano commentando o de-commentando interi blocchi di variabili nella parte iniziale di "script/umak/makeso"; questa modalità corrisponde a quella della compilazione degli eseguibili prima della semplificazione che ha portato a introdurre le variabili "WHAT" e "MODE" [punti (4) e (6)] 
-  -si noti però che, per la compilazione delle librerie dinamiche, la configurazione all'inizio di "script/umak/makeso" è inadeguata, almeno per quanto riguarda la piattaforma linux; si tratta probabilmente di un copia/incolla della configurazione per la produzione di eseguibili che dovrebbe essere adattata - piattaforma per piattaforma - alla produzione di librerie dinamiche; 
-  -in considerazione del punto precedente - a meno che non si desideri espressamente la compilazione dell'unica libreria dinamica - si suggerisce di disattivare tale compilazione intervenendo su "script/makefile" 
- 
- 
- Riassumendo, per compilare - in ambienti di tipo unix - 'hicgi' & C. partendo da un file 'zip' di sorgenti di 'hicgi' registrati in RightWay, si proceda in questo modo: 
- 
-  *si crei un direttorio "script" (in minuscolo); 
-  *si copi il file 'zip' di sorgenti dentro il direttorio "script" [per maggiori dettagli, vedasi anche punto (1) della lista precedente]; 
-  *si estragga i sorgenti dal file 'zip' usando "unzip -aa <file.zip>" [punto (2)]; 
-  *si verifichi che i file e i direttori estratti ("3d", "base64", "bin", "cppp", ecc.) siano direttamente contenuti nel direttorio "script"; 
-  *si  selezioni la piattaforma di compilazione per gli eseguibili editando "script/umak/makeutil" e attivando l'opportuno valore di "WHAT" [punto (4)]; 
-  *si selezioni la modalità di compilazione "MODE" - "debug" o "release" - editando "script/umak/makefile" [punto (6)]; 
-  *si editi "script/makefile" commendando le due righe relative a 'makeso' [punto 9] 
-  *dal direttorio "script" si dia il comando "make"; 
-  *in assenza di errori, si troveranno gli eseguibili prodotti in "script/bin/debug" o "script/bin/release", a seconda della modalità adottata. 
- 
- 
- 
- 
- 
- 
- 
- 
-Preparazione, in ambienti di tipo unix, di moduli secondari rispetto ad 'hicgi' ('ziw', 'unziw', 'hras', 'h3' e forse altri) partendo dallo 'zip' dei sorgenti presenti in RightWay 
- 
- 
- 
- Contrariamente ad 'hicgi', per il quale i sorgenti in RightWay sono tipicamente completi (e quindi autosufficienti) e persino sovrabbondanti (poiché permettono la preparazione anche di moduli collaterali ad 'hicgi'), i sorgenti di questi programmi collaterali - come 'ziw', 'unziw', 'h3', 'hras' e forse altri - sono tipicamente incompleti e spesso comprendono solamente gli aggiornamenti specifici per il modulo in oggetto rispetto alla precedente versione di 'hicgi' presente in RightWay. 
- 
- Quindi, volendo produrre una versione per una piattaforma di tipo unix di un modulo collaterale ad 'hicgi', ci si dovrà pesantemente affidare a RightWay procedendo in questo modo: 
- 
-  *dalla pagina di RightWay (RW in seguito) di una particolare release del  modulo di nostro interesse, si estragga lo 'zip' dei sorgenti; per semplicità, diciamo che questo si chiama "mod.zip"; 
-  *dalla stessa pagina di RW, si cerchi di individuare eventuali indicazioni specifiche (annotazioni o altro) relative alla preparazione dell'eseguibile; tenere eventualmente conto di queste annotazioni; 
-  *in assenza di annotazioni di cui al punto precedente (o in presenza di annotazioni non contrastanti) si cerchi di capire se il file "mod.zip" contiene tutti i sorgenti necessari alla compilazione o solo quelli specifici del modulo; se i sorgenti sono completi ci si riconduca alle istruzioni per la preparazione di 'hicgi', altrimenti si continui con le presenti indicazioni; 
-  *si torni a guardare la pagina di RW del modulo per verificare se link-a una particolare versione di 'hicgi'; nel caso positivo, si estragga lo 'zip' dei sorgenti (diciamo "hicgi.zip") di tale versione di 'hicgi' e si passi al punto (vii); nel caso negativo si continui dal punto (v); 
-  *si individui, confrontando in RW la data della release del modulo con le date delle release di 'hicgi', l'ultima versione di 'hicgi' emessa prima della particolare release del modulo; 
-  *si estragga da RW lo 'zip' dei sorgenti (diciamo "hicgi.zip") della versione di 'hicgi' individuata al punto precedente; 
-  *si crei un direttorio "script" (in minuscolo); 
-  *si estraggano, ad esempio con "unzip -aa hicgi.zip", dentro "script" i sorgenti contenuti in "hicgi.zip"; 
-  *si verifichi che i file e i direttori estratti ("3d", "base64", "bin", "cppp", ecc.) siano direttamente contenuti nel direttorio "script"; 
-  *si estragga il contenuto di "mod.zip" ("unzip -aa mod.zip") in un altro punto del file system in maniera tale da non interferire (non sovrascrivere) i file estratti da "hicgi.zip" 
-  *per ogni file estratto da "mod.zip", si individui il corrispondente file estratto da "hicgi.zip" e lo si sovrascriva (quello da "mod.zip" al posto di quello da "hicgi.zip"); si faccia particolare attenzione in questa fase e si tenga presente che la disposizione in direttori dei file presenti in "mod.zip" può non corrispondere a quella dei file presenti in "hicgi.zip"; 
-  *si  selezioni la piattaforma di compilazione per gli eseguibili editando "script/umak/makeutil" e attivando l'opportuno valore di "WHAT"; 
-  *si selezioni la modalità di compilazione "MODE" - "debug" o "release" - editando opportunamente "script/umak/makefile"; 
-  *si editi "script/makefile" commendando le due righe relative a 'makeso'; 
-  *dal direttorio "script" si dia il comando "make"; 
-  *in assenza di errori, si troveranno gli eseguibili prodotti in "script/bin/debug" o "script/bin/release" - a seconda della modalità adottata - tra i quali quello corrispondente al nostro modulo 
-  
- 
  
/data/attic/documentazione_3di_riservata/highway/appunti_hicgi.1253892757.txt.gz · Ultima modifica: 2017/09/08 10:59 (modifica esterna)