Luafilesystem Binario Options
LuaFileSystem LuaFileSystem è una libreria Lua sviluppato per integrare l'insieme delle funzioni relative ai sistemi offerti dalla distribuzione standard Lua file. LuaFileSystem offre un modo portatile per accedere alla struttura di directory e file di attributi sottostanti. LuaFileSystem è un software gratuito e utilizza la stessa licenza come Lua 5.x (MIT). La versione corrente è 1.6.3. Funziona con Lua 5.1, 5.2 e 5.3. fonte LuaFileSystem può essere scaricato dalla sua pagina di Github. La versione 1.6.3 15Jan2015 Lua 5.3 supporto. bugfix assortiti. La versione 1.6.2 Oct2012 completa Lua 5.2 compatibilità (con Lua 5,1 fallback) Versione 1.6.1 01Oct2012 fissare costruire per Lua 5.2 Versione 1.6.0 26Sep2012 getcwd correzione per il supporto Android per Lua 5.2 add lfs. link altre correzioni di bug Versione 1.5.0 20Oct2009 aggiunto espliciti metodi prossimi e chiudere al secondo valore di ritorno della lfs. dir (l'oggetto di directory), per l'iterazione esplicita o chiusura esplicita. Aggiunta di bloccaggio directory tramite lfs. lockdir funzione (vedere il manuale). Versione 1.4.2 03Feb2009 lfs. attributes bug fisso (nome del file, dimensione) di overflow sui file 2 Gb di nuovo (rapporto bug e patch per KUBO Takehiro). Corretto il bug Errore di compilazione su Solaris 10 (bug report e delle patch da Aaron B). problemi di compilazione fissi con Borland C versione 1.4.1 07May2008 revisione documentazione di problemi di compilazione di Windows fisso Corretto un bug nel Windows test (patch di Shmuel Zeigerman) lfs. attributes Corretto il bug (nome del file, dimensione) di overflow sui file 2 Gb versione 1.4.0 13Feb2008 funzione lfs. setmode aggiunto (funziona solo in sistemi Windows). lfs. attributes genera un errore se l'attributo non esiste la versione 1.3.0 26Oct2007 aggiunto lfs. symlinkattributes funzione (funziona solo in sistemi non Windows). Versione 1.2.1 08May2007 compatibile solo con Lua 5.1 (Lua 5,0 supporto è stato eliminato) Versione 1.2 15Mar2006 aggiunto argomento opzionale per lfs. attributes aggiunto correzione bug funzione lfs. rmdir su lfs. dir Versione 1.1 30May2005 aggiunto la funzione lfs. touch. Versione 1.0 21Jan2005 Versione 1.0 Beta 10Nov2004LuaFileSystem è stato progettato da Roberto Ierusalimschy, Andreacute Carregal e Tomaacutes Guisasola come parte del Progetto Keplero. che detiene il suo copyright. LuaFileSystem è attualmente mantenuto da Faacutebio Mascarenhas. LuaFileSystem Introduzione LuaFileSystem è una libreria Lua sviluppato per integrare l'insieme delle funzioni relative ai sistemi offerti dalla distribuzione standard Lua file. LuaFileSystem offre un modo portatile per accedere alla struttura di directory e file di attributi sottostanti. LuaFileSystem dovrebbe essere costruito con Lua 5.1 in modo che la libreria della lingua e file header per la versione di destinazione deve essere installato correttamente. LuaFileSystem offre un Makefile e un separato file di configurazione, di configurazione. che dovrebbe essere modificato per soddisfare la vostra installazione prima di eseguire make. Il file ha alcune definizioni, come percorsi per le librerie esterne, opzioni del compilatore e simili. Su Windows, il runtime C utilizzato per compilare LuaFileSystem deve essere lo stesso di runtime che utilizza Lua, o alcune funzioni LuaFileSystem non funzionerà. Installazione Il modo più semplice per installare LuaFileSystem è quello di utilizzare LuaRocks: Se si preferisce installare LuaFileSystem manualmente, il binario compilato deve essere copiato in una directory nel percorso C. LuaFileSystem offre le seguenti funzioni: lfs. attributes (filepath, aname atable) Restituisce una tabella con gli attributi di file corrispondente al percorso file (o nullo seguito da un messaggio di errore in caso di errore). Se il secondo argomento opzionale è dato ed è una stringa, quindi solo il valore dell'attributo nome viene restituito (questo uso è equivalente a lfs. attributes (percorso file) aname., Ma la tabella non è creato e un solo attributo viene recuperato dal OS). se una tabella viene passato come secondo argomento, è pieno di attributi ed è tornato invece di una nuova tabella. Gli attributi sono descritti come segue modalità attributo è una stringa, tutti gli altri sono numeri, e gli attributi relativi al tempo utilizzano lo stesso riferimento temporale di os. time. dev su sistemi Unix, questo rappresenta il dispositivo che l'inode risiede. Sui sistemi Windows, rappresenta il numero di unità del disco contenente il file ino su sistemi Unix, questo rappresenta il numero di inode. Sui sistemi Windows questo non ha nessuna stringa modalità significato che rappresenta la modalità di protezione associato (i valori potrebbero essere file. Directory. Collegamento. Presa. Named pipe. Char dispositivo. Dispositivo a blocchi o altro) il numero nlink di hard link al file uid user-id di proprietario (solo Unix, sempre 0 su Windows) gid group-id di proprietario (Unix solo, sempre 0 su Windows) rdev su sistemi Unix, rappresenta il tipo di dispositivo, per inode di file speciali. Sui sistemi Windows rappresenta lo stesso di tempo di accesso dev di ultima modifica di accesso di tempo cambiamento modifica ultimi dati dell'ultimo file formato stato del file cambio formato, in permessi bytes permessi dei file blocchi stringa blocco allocato per il file (solo Unix) blksize file system ottimale IO blocksize (Unix) Questa funzione utilizza stat internamente in tal modo, se la data filepath è un link simbolico, è seguito (se punta ad un altro anello della catena è seguito in modo ricorsivo) e le informazioni sono sul file si riferisce. Per ottenere informazioni sul collegamento stesso, vedi lfs. symlinkattributes funzione. lfs. chdir (path) Cambia la directory di lavoro corrente al percorso indicato. Restituisce vero in caso di successo o nulla, più una stringa di errore. lfs. lockdir (percorso, secondsstale) Crea un file di lock (chiamati lockfile. lfs) nel percorso, se non esiste e restituisce la serratura. . Se il blocco esiste già controlla se il suo stantio, usando il secondo parametro (default per il secondo parametro è INTMAX che in pratica significa che il blocco non sarà mai stantio Per liberare la chiamata di blocco serratura:.. Free () In caso di errori restituisce nil e il messaggio di errore. In particolare, se il blocco esiste e non è stantio restituisce il file esiste messaggio. lfs. currentdir () restituisce una stringa con la directory corrente di lavoro o nulla, più una stringa di errore. iter, DirObj lfs. dir (percorso) Lua iteratore sulle voci di una determinata directory. Ogni volta che l'iteratore viene chiamato con DirObj restituisce il nome di una directory entrys come una stringa, o nulla se non ci sono più voci. è inoltre possibile scorrere chiamando DirObj :. successivo () e chiudere in modo esplicito la directory prima iterazione finito con DirObj:.. close () genera un errore se il percorso non è una directory lfs. lock (filehandle, modalità, avviare, lunghezza) blocca un file o di una parte di esso. Questa funzione opera su file aperti l'handle di file deve essere specificato come primo argomento. La modalità stringa può essere sia r (per una serratura readshared) o w (per un blocco writeexclusive). Gli argomenti opzionali inizio e la durata possono essere utilizzati per specificare un punto di partenza e la sua lunghezza entrambi dovrebbero essere i numeri. Restituisce true se l'operazione ha avuto successo in caso di errore, restituisce nil più una stringa di errore. lfs. link (vecchio, nuovo, link simbolico) Crea un link. Il primo argomento è l'oggetto da collegare e il secondo è il nome del collegamento. Se il terzo argomento opzionale è vero, il link da un link simbolico (per impostazione predefinita, si crea un hard link). lfs. mkdir (dirname) Crea una nuova directory. L'argomento è il nome della nuova directory. Restituisce true se l'operazione ha avuto successo in caso di errore, restituisce nil più una stringa di errore. lfs. rmdir (dirname) Rimuove una directory esistente. L'argomento è il nome della directory. Restituisce true se l'operazione ha avuto successo in caso di errore, restituisce nil più una stringa di errore. lfs. setmode (file, modalità) Consente di impostare la modalità di scrittura di un file. La stringa modalità può essere sia di testo o binario. Restituisce vero seguito la stringa modalità precedente per il file, o nullo seguito da una stringa di errore in caso di errori. Sulle piattaforme non Windows, in cui le due modalità sono identiche, l'impostazione della modalità non ha alcun effetto, e la modalità è sempre restituito come binario. lfs. symlinkattributes (filepath, aname) Identico al lfs. attributes tranne che ottiene le informazioni sul link stesso (non il file si riferisce). In Windows questa funzione non supporta ancora i collegamenti, ed è identico a lfs. attributes. lfs. touch (filepath, atime, mtime) Set di accesso e modifica di un file. Questa funzione è un binding a utime funzione. Il primo argomento è il nome del file, il secondo argomento (atime) è il tempo di accesso, e il terzo argomento (mtime) è il tempo di modifica. Entrambe le volte sono forniti in pochi secondi (che dovrebbe essere generato con Lua funzione os. time standard). Se il tempo di modifica viene omesso, il tempo di accesso fornito viene utilizzato se entrambe le volte sono omessi, viene utilizzato il tempo corrente. Restituisce true se l'operazione ha avuto successo in caso di errore, restituisce nil più una stringa di errore. lfs. unlock (filehandle, inizio, lunghezza) Sblocca un file o una parte di esso. Questa funzione opera su file aperti l'handle di file deve essere specificato come primo argomento. Gli argomenti opzionali inizio e la durata possono essere utilizzati per specificare un punto di partenza e la sua lunghezza entrambi dovrebbero essere i numeri. Restituisce true se l'operazione ha avuto successo in caso di errore, restituisce nil più un errore di string. Introduction Questo è un tutorial step-by-step per ottenere installato e funzionante con Lua sui sistemi Microsoft Windows scaricando e compilando i sorgenti usando solo libero attrezzi o strumenti già presenti in qualsiasi installazione di Windows. Molto poca esperienza di programmazione è richiesta da parte dell'utente. Questo tutorial può anche essere di qualche interesse per gli utenti Linux esperti che hanno poca conoscenza delle piattaforme Windows. Se sei un programmatore esperto e trovare questo tutorial troppo facile o limitati, si prega di consultare la pagina BuildingLua. che è molto più tecnica e dettagliata. Descrizione e Prerequisiti ipotesi circa il lettore: ha una conoscenza generale del file system di Windows e sa come eseguire le operazioni di base su di esso utilizzando gli strumenti del sistema operativo fornito (sfogliare il file system, copymove un file, rinominare un file, creare una directory, eccetera.). Sa come scaricare un file da Internet utilizzando un browser web. Sa come installare un programma in Windows utilizzando un programma di installazione. Sa cosa sia un file di testo è e come creare uno utilizzando un editor di testo (Blocco note di Windows è sufficiente per questo tutorial, ma la liberamente disponibile SciTE o TextAdept potrebbe essere scelte migliori per un programmatore alle prime armi). Sa cosa sia un archivio compresso e come per decomprimerlo. Sa che cosa la shell dei comandi di Windows e come per tirarlo su. Sa che cosa il percorso di ricerca dei file eseguibili di Windows e come aggiungere voci ad esso (questo è a volte indicato come il percorso di sistema o semplicemente il percorso ed è correlata alla variabile d'ambiente PATH di Windows 1). Molte delle ipotesi di cui sopra non sono severi requisiti, perché nei seguenti alcune procedure saranno spiegate in dettaglio, ma il lettore non deve aspettarsi troppo tenevano per mano su tali argomenti. Il tutorial è organizzato in fasi sequenziali che possono essere così schematizzati: scaricare un adeguato compilatore C (TDM GCC). Scarica pacchetto sorgente Lua. Scarica un decompressore per il pacchetto sorgente Lua (7-zip). Installare il compilatore. Installare il decompressore. Decomprimere l'archivio in una posizione adatta. Configurare il compilatore in modo tale che riesce a trovare le fonti e avviare il processo di costruzione (useremo uno script di shell dei comandi di Windows per fare questo). Nota importante: si consiglia di leggere questa pagina nella sua interezza prima di poter realmente iniziare la procedura. Assicurarsi di aver capito tutto in anticipo: questo si potrebbe risparmiare un po 'di tempo e difficoltà in seguito. Questa procedura è piuttosto infallibile (si spera), ma non si sa mai -) Nota: la procedura è stata testata, utilizzando un account con privilegi amministrativi, su una macchina x86 a 32 bit di Windows XP Professional con Service Pack 3 (SP3) ( Intel mobile core 2 Duo T7500 - 2GB di RAM). Il compilatore utilizzato è TDM GCC 4.9.2 (versione a 32 bit). Nota: col passare del tempo alcuni dei link qui contenute potrebbe diventare obsoleto. Ecco perché qui di seguito diamo non solo i collegamenti diretti ai pacchetti, ma anche il link alle pagine principali per le applicazioni coinvolte. Questo dovrebbe permettere al lettore motivato a adattarsi ai cambiamenti evidenti (ad esempio compensare futuri numeri di versione dei collegamenti) che stanno guardando i siti web da solo, dovrebbe questa pagina non essere aggiornato. Passo a passo Fase 1: Scarica il compilatore (TDM-GCC) Useremo il port per Windows del compilatore GCC fonte aperta da TDM. La pagina di download si trova a 2. Mentre il seguente è il link diretto per il pacchetto abbiamo bisogno: 3. Fare clic sul link precedente, seguire le istruzioni e attendere che il download sia completato. Il file scaricato deve essere TDM-gcc-4.9.2.exe. Si tratta di un download 30 MB, in modo da essere sicuri di avere una connessione a Internet abbastanza veloce. Per evitare possibili problemi, assicurarsi che il pacchetto scaricato si trova in una directory (cartella) il cui percorso completo doesnt contenere spazi. Se questo non è il caso, copiare o spostare in una directory che soddisfi tale esigenza. Tutti i pacchetti che ben download dovrebbe finire in questa directory (lo useremo come una directory di lavoro temporanea per l'intero tutorial). Ai fini di questo tutorial si suppone è stata creata la seguente cartella come directory di lavoro: copia (o spostare) il pacchetto di installazione appena scaricato nella directory di lavoro, se non ha ancora scaricarlo lì, in primo luogo. Ora la nostra directory di lavoro dovrebbe avere il seguente contenuto: Fase 2: scaricare i sorgenti Lua Lua Fonti pagina di download è 4. Questo è il link dowload diretto alla versione più recente, al momento della stesura di questo: 5. Fare clic sul link precedente, seguire la istruzioni e attendere il download per il completamento. Assicurarsi che il file scaricato risiede nella cartella C: gcc-lua-directory di installazione (o copymove lì dopo il download - non rimarremo riformulare questo). Ora abbiamo due file nella nostra directory di lavoro: Fase 3: Scaricare un decompressore (7-Zip) per Lua Fonti Lua sono confezionati in un formato di file molto comune sulle piattaforme Linux, ma che è insolito su Windows: il TAR-GZ formato , come accennato dal. tar. gz doppia estensione del file. Sistemi operativi Windows non può decomprimere questo formato nativo, quindi abbiamo bisogno di un programma che può farlo. Un programma molto buono e versatile gratuito compressiondecompression per Windows in grado di gestire i file TAR-GZ (e molti altri formati compressi) è 7-zip. Dal momento che vogliamo mantenere il processo il più semplice possibile non rimarremo usare il pacchetto di installazione originale di 7-zip, perché quest'ultima modifica il sistema quando viene installato. Invece useremo una distribuzione alternativa confezionato da PortableApps e disponibile dalla pagina: 6. Fare clic sul link per il download, seguire le istruzioni e attendere che il download sia completato. Assicurarsi che anche questo file risiede nella nostra directory di lavoro. Ora abbiamo tre file nella nostra directory di lavoro: Fase 4: installare il compilatore Ora navigare con Windows Explorer. Di Windows file manager grafico (questo non è Internet Explorer), nella nostra directory di lavoro ed eseguire il programma di installazione compilatori facendo doppio clic su TDM-gcc-4.9.2.exe. Una finestra di dialogo dovrebbe apparire. Deselezionare l'opzione Verificare la presenza di file aggiornati sul server TDM-GCC. Premere il pulsante Crea. Nella casella di modifica che appaiono specificare C: gcc-lua-installtdm-gcc come directory di installazione. Premere il pulsante Avanti. Nella struttura di selezione che sembra scorrere fino alla fine e deselezionare le opzioni di voci del menu Start e Aggiungi al PATH (questo passaggio non è strettamente necessario, ma assicura che l'installazione del compilatore lascia il sistema completamente pulito, oltre ad estrarre i file nella directory specificata sopra). Premere il pulsante Installa e attendere il completamento dell'installazione. Quando il programma di installazione dichiara l'avvenuta installazione, premere il pulsante Avanti. Premere il pulsante Fine (si può leggere il file readme o no - non è necessario per i nostri scopi). Il contenuto attuale della nostra directory di lavoro ora dovrebbe essere: con l'ultimo elemento è la sottodirectory in cui il compilatore è ora installato (si noti che in Windows Explorer probabilmente saranno visualizzati questi elementi in un ordine diverso). Fase 5: Installare il decompressore Ora eseguire il 7-zip installazione portatile con un doppio clic sul file 7-ZipPortable9.20Rev2.paf. exe all'interno della nostra directory di lavoro. Una finestra di dialogo dovrebbe apparire. Selezionare l'inglese come la lingua (questo non è strettamente necessario, ma per il resto le seguenti istruzioni potrebbero non corrispondere i messaggi nelle finestre di dialogo youll vedere). Premere il pulsante OK. Premere il pulsante Avanti. Nella casella di modifica che appaiono specificare C: gcc-lua-install7zip come cartella di destinazione. Premere il pulsante Installa e attendere il completamento dell'installazione. Premere il pulsante Fine. Il contenuto attuale della nostra directory di lavoro ora dovrebbe essere: con l'ultimo elemento è la sottodirectory in cui è stato installato 7-zip. Passo 6: Disimballare Lua Fonti usando 7-Zip Naviga nella directory di installazione di 7-zip (cioè C: gcc-lua-install7zip) e fare doppio clic sul file 7-ZipPortable. exe. Questo eseguirà 7-zip e portare i programmi finestra principale, che assomiglia vagamente di Windows Explorer. Utilizzando la finestra 7-zip. accedere alla nostra directory di lavoro (ad esempio, è possibile copiare e incollare C: gcc-lua-install nella sua barra degli indirizzi e premere Invio). All'interno della finestra 7-zip, doppio clic sul file del pacchetto Lua (lua-5.3.0.tar. gz), si dovrebbe vedere l'interno del pacchetto come una singola cartella chiamata lua-5.3.0.tar. Fare doppio clic su lua-5.3.0.tar. si deve inserire la cartella e vedere un'altra cartella denominata lua-5.3.0. Fai clic destro su lua-5.3.0. un menu contestuale dovrebbe apparire. Selezionare la Copia. opzione dal menu. Una finestra di dialogo con una copia caption dovrebbe apparire. Specificare la directory di lavoro (C: gcc-lua-install) in quel dialogo come destinazione e premere Ok. Chiudere la finestra 7-zip, non abbiamo più bisogno. Ora sfogliare nella nostra directory di lavoro e verificare che: una nuova sottodirectory denominata lua-5.3.0 dovrebbe essere presente. Il contenuto attuale della nostra directory di lavoro ora dovrebbe essere: con l'ultimo elemento è la sottodirectory in cui sono stati spacchettati fonti Lua. Fase 6: Creazione di una shell Windows Script per guidare il costruire il lettore dovrebbe creare un file di testo chiamato build. cmd nella nostra directory di lavoro quindi copiare e incollare il seguente testo al suo interno. Il contenuto attuale della nostra directory di lavoro ora dovrebbe essere: Ora eseguire lo script di shell con un doppio clic su build. cmd. dovrebbe comparire una finestra con uno sfondo nero. Al suo interno si dovrebbe vedere i messaggi prodotti dal script come funziona (la maggior parte di essi proviene da GCC durante la compilazione delle fonti Lua). Questo può richiedere un po ', ma dipende in larga misura le prestazioni del vostro PC. Con il nostro sistema di test ci sono voluti circa un minuto, ma che era un sistema piuttosto vecchio. Dopo la compilazione è terminata, lo script creerà anche una distribuzione binaria pulita (cioè senza inutili file di origine) nella nostra directory di lavoro e si esibirà in un semplice test che stamperà un messaggio di benvenuto prima di terminare. Dovreste vedere che il messaggio auto-esplicativo al fine dell'output nella finestra nera. È ora possibile chiudere la finestra nera. Il contenuto attuale della nostra directory di lavoro ora dovrebbe essere: Passo 7: Copiare il installazione Lua binario in un luogo adatto La directory C: gcc-lua-installlua contiene ora tutto è necessario per eseguire uno script Lua. È possibile copiare questa cartella con il suo contenuto, ovunque si possono trovare conveniente (anche su un pen drive USB). La struttura interna di lua directory di installazione binario dovrebbe essere la seguente: Nella sottodirectory bin troverete lua. exe. l'interprete Lua (se si fa doppio clic su di esso verrà eseguito in modalità interattiva), mentre nella sottodirectory doc troverete il manuale di riferimento Lua. Fase 8: Configurare il sistema per eseguire Lua file Se si vuole essere in grado di digitare: per eseguire myscript. lua dalla riga di comando è necessario mettere sotto-directory bin Lua nel percorso di ricerca di Windows. Osservazioni conclusive Dopo aver copiato la sottodirectory lua nella sua posizione definitiva, si potrebbe eliminare completamente la directory di lavoro con tutto il suo contenuto. Tuttavia, è possibile salvare molte cose utili facilmente: i pacchetti di installazione Lua-5.3.0.tar. gz. TDM-gcc-4.9.2.exe e 7-ZipPortable9.20Rev3.paf. exe possono essere conservati lontano per le esigenze future o scopi di backup. L'installazione GCC dir TDM-gcc può essere copiato o spostato dove si vuole (attenzione a non mettere in una directory con gli spazi in esso) e gli strumenti all'interno TDM-gccbin può essere invocato direttamente dalla riga di comando (è necessario aggiungere TDM - gcc nel percorso di ricerca di Windows, se si vuole evitare di specificare il percorso completo, tuttavia). L'installazione dir 7-zip è inoltre completamente mobile (portatile, come non-programmatore utenti Windows direbbe, ma la portabilità in programmazione ha un altro significato 7). Così si può movecopy dove si vuole e iniziare a 7-zip eseguendo all'interno dell'eseguibile 7-ZipPortable. exe. È così leggero che si adatta bene anche su una pendrive Se siete curiosi è anche possibile esplorare la directory e dare uno sguardo all'interno delle fonti Lua, ma è necessario essere un programmatore C per comprendere la maggior parte di loro si divertono con Lua.
Comments
Post a Comment