Forumzone Community

Community 3dfx => 3dfx Help ed Ottimizzazione - Supporto Utenti => Discussione aperta da: Sydney il 17 Giugno 2005, 14:11:12

Titolo: Compilazione Dxtn.dll
Inserito da: Sydney il 17 Giugno 2005, 14:11:12
...Buongiorno a tutti,

    ...in seguito all'uscita del nuovo pacchetto di drivers Amigamerlin 3.1 R11 (...un chapeau al team Amigamerlin per il sempre ottimo lavoro nello sviluppo dei drivers...), che ora prevede anche l'impiego, opzionale, di questa dll, ho cercato di riprendere in mano la cosa, tralasciata qualche mese fa (quando tentai di capirci qualcosa seguendo la discussione "MesaFx Vs 3dfxogl in Quake III" nel forum), visto anche la volontà di fare una gradita sorpresa a mio fratello, accanito giocatore di COD e della sua espansione :)
...devo premettere che la mia ignoranza in materia di programmazione (e conseguentemente compilazione) è abissale, e le mie uniche conoscenze in materia risalgono al Pascal delle scuole superiori... con tutta la buona volontà, comunque, stamane mi sono seduto di fronte al computer, procedendo come segue:
1. scarico dal sito di Daniel Borca il file fxt1.zip;
2. utilizzo, in ordine, MinGW32 (Full Install), il Visual-MinGW, MSYS ed il DJGPP;

Risultati (dopo circa 5 ore di tentativi...):

- Visual-MinGW: non sono riuscito a concludere nulla di positivo, ricevendo costantemente lunghe liste di errori;

- DJGPP: dopo aver estratto i files all'interno della subdirectory bin, con il comando make (per il file codec.exe) e make dll (per il file dxtn.dll) ottengo, rispettivamente, dopo alcune righe di compilazione, l'errore *** [codec.exe] Error 1 e *** [dxtn.dxe] Error -1

-MinGW32: questo è l'unico con cui, dopo numerosissimi tentativi, sono riuscito a concludere qualcosa...
...nel caso in cui provassi ad usare mingw32-make con il parametro verso una directory dove erano presenti i files estratti dallo zip, ottenevo costantemente degli errori, il più frequente dei quali era gcc: installation problem, cannot exec 'cc1', no such file or directory ***[Main.o] Error 1
I tentativi eseguiti copiando, invece, i files estratti nella directory \bin di Mingw si sono rivelati più proficui...
...provando il comando mingw-make dll, dopo una prima compilazione, ho ottenuto il seguente errore:
dxe3gen -o dxtn.dxe -E _fetch_ -E _tx -D "DXTn codec" -U maindll.o dxtn.o texstore.o
"dxe3gen" non è riconosciuto come comando interno o esterno, un programma eseguibile o un file batch.
mingw32-make: ***dntn.dxe] Error 1
...dopo svariate ricerche su internet, ho capito che il dxe3gen era collegato a DJGPP, e mi è allora venuto il sospetto che Mingw32-make utilizzasse il makefile .dj, relativo a DJGPP, e non il .mgw; ho quindi forzato l'utilizzo del makefile mgw, con i rispettivi comandi
mingw32-make --file mkfiles/makefile.mgw dll
mingw32-make --file mkfiles/makefile.mgw
i quali, dopo alcuni warning nel processo di compilazione (relativi a "long unsigned int format t_type arg (arg 4)" e "ISO C90 does not support 'long long') ed un messaggio finale "dllwrap: no export definition file provided. Creating one, but that may not be what you want", mi hanno restituito, come risultato, rispettivamente i files dxtn.dll (dimensioni 27,5kb - 28.233 byte) e codec.exe (dimensioni 36,5kb - 37.376 byte).

Ed ora, il quesito di questo lungo messaggio...sono effettivamente compilati correttamente (mi riferisco alle dimensioni) i due files risultanti, ed in particolar modo la dll, soprattutto visto il messaggio di avvertimento di cui sopra, relativo al dllwrap?
Inoltre, sono conscio di dover poi copiare la dll in /system32, dove risiede anche opengl32.dll, ma il file codec.exe a che cosa serve, di preciso? come lo devo utilizzare?

Grazie molte per il tempo e l'aiuto che mi potrete dare, e mi scuso per la lunghezza del messaggio...

           Saluti,

                   Sydney
Titolo: Compilazione Dxtn.dll
Inserito da: benna il 17 Giugno 2005, 14:45:07
anche a me ha dato lo stesso avvertimento e penso che sia normale
per quanto riguarda il file codec.exe... non so proprio a cosa serva :o
aspettiamo delucidazioni dall'alto

Titolo: Compilazione Dxtn.dll
Inserito da: Sydney il 18 Giugno 2005, 08:12:45
...grazie per il tuo intervento, benna :)

...ieri sera, passando di sfuggita, ho notato, tra le Latest News del sito, "17.06.2005   Compiled DXTN.DLL for Amigamerlin 3.1 R11 Available for download!"...mi sono messo a ridere...
...sembra quindi che il file compilato sia disponibile direttamente per il download, ma resta in me la curiosità di sapere se quanto fatto era effettivamente corretto (...e lo sembra, verificando le dimensioni del file da me compilato e quello scaricato da 3dfxzone...) e l'impiego di quel misterioso codec.exe...staremo a vedere...:)
Titolo: Compilazione Dxtn.dll
Inserito da: bombo il 18 Giugno 2005, 16:16:34
scusate l'ignoranza ma qual'è il sito di daniel borca?
Titolo: Compilazione Dxtn.dll
Inserito da: peppos83 il 18 Giugno 2005, 16:30:30
Citazionescusate l'ignoranza ma qual'è il sito di daniel borca?

 

http://www.geocities.com/dborca/;)

Titolo: Compilazione Dxtn.dll
Inserito da: goriath il 06 Luglio 2005, 21:07:49
Faccio un saluto a tutti, in particolare a Sydney che invidio molto per la sue conoscenze in termini di programmazione :)

Io al contrario, non ne capisco nulla :(. Mi piacerebbe imparare qualcosa, non dico molto, ma almeno il necessario per capire ad esempio, come fare a compilare sta DXTN.DLL che mi incuriosisce moltissimo (propbabilmente dovrei conoscere molto di più in materia per sapermela compilare da solo; non so perciò chiedo :o)

Alcune domande:

In che termini va compilata questa dll? O meglio, in base a cosa? Va compilata in funzione dei games o che? Bo?:o La dll agisce sul pacchetto driver? Oppure è un complemento del pacchetto stesso? Le istruzioni che aggiunge una volta compilata, a cosa mirano di preciso? Apporta migliorie in generale, oppure aggiunge vere e proprie funzionalità?

Scusate la quantità di domande ma voglio cominciare a capirci un po di più:o. Grazie a colui/lei/loro che si prenderanno la briga di rispondere anche ad una sola delle mie domande:o

Titolo: Compilazione Dxtn.dll
Inserito da: benna il 07 Luglio 2005, 11:10:49
Citazioneil necessario per capire ad esempio, come fare a compilare sta DXTN.DLL
mi spiace deluderti ma par compilare la dll non serve alcuna conoscenza del c++, basta soltanto installare il compilatore e scrivere il comando appropriato per compilarla.
la dll viene così compilata e va bene per qualsiasi gioco, si aggiunge ai driver e inserisce la gestione nativa della compressione delle texture s3tc; questa gestione è presente anche senza la dll però è indiretta e quindi più lenta.
spero di essere stato esauriente ;)

Titolo: Compilazione Dxtn.dll
Inserito da: goriath il 07 Luglio 2005, 14:54:17
Ma fatemi capire una cosa: la dll viene compilata in modo univoco, o ognuno che la compila può farlo personalizzandola a modo proprio? E quale/i sarebbe/ro questo/i comando/i per compilarla?:o

Titolo: Compilazione Dxtn.dll
Inserito da: benna il 07 Luglio 2005, 15:23:25
la dll viene compilata in un solo modo da chiunque, poi se tu vuoi personalizzarla smanettando sui sorgenti nessuno te lo vieta ;)
per compilarla (ipotizzo che tu abbia già installato MinGW) devi accedere al prompt, da quì entrare nella cartella coi sorgenti e digitare il comando "mingw32-make dll"

Titolo: Compilazione Dxtn.dll
Inserito da: goriath il 07 Luglio 2005, 15:30:34
Ma allora se per compilarla basta quel semplice comando, perchè Sydney ha avuto tutte quelle difficoltà e tutta quella serie di errori? Cos' altro ha tentato di fare lui, oltre la compilazione della dll?

Grazie benna per la pazienza :)

Titolo: Compilazione Dxtn.dll
Inserito da: benna il 07 Luglio 2005, 18:48:05
anche io ho fatto una fatica incredibile per compilarla perchè mingw non setta le variabili d'ambiente durante l'installazione e quindi non viene riconosciuto il comando make dll
io ho risolto decomprimendo lo zip nella cartella bin di mingw;)

P.S. per settare le variabili d'ambiente bisogna andare su proprietà di sistema, avanzate, variabili d'ambiente e modificare la stringa "path" inserendo in fondo il percorso della cartella bin di mingw



Questo messaggio è stato aggiornato da benna il 07/07/2005  alle ore  18:54:05
Titolo: Compilazione Dxtn.dll
Inserito da: goriath il 07 Luglio 2005, 19:18:14
:eek:

Cacchio me lo potevi dire prima che è tutto il pomeriggio che mi sbatto che sto comando non me lo prende! :D

EDIT: Niente da fare ho fatto come mi hai detto, ma il comando non me lo riconosce :diablo:



Questo messaggio è stato aggiornato da goriath il 07/07/2005  alle ore  19:22:10
Titolo: Compilazione Dxtn.dll
Inserito da: goriath il 07 Luglio 2005, 19:36:57
Ok rettifico; sono contento perchè sembra che qualcosa sia successo, ma non so cosa :o

Ecco qua:

C:\MinGW\bin\fxt1>mingw32-make dll
gcc -o maindll.o -Wall -W -pedantic -ansi -O2 -ffast-math -mtune=pentium -funrol
l-loops -Iinclude -DVERBOSE -c maindll.c
gcc -o dxtn.o -Wall -W -pedantic -ansi -O2 -ffast-math -mtune=pentium -funroll-l
oops -Iinclude -DVERBOSE -c dxtn.c
dxtn.c:50: warning: ISO C90 does not support `long long'
gcc -o texstore.o -Wall -W -pedantic -ansi -O2 -ffast-math -mtune=pentium -funro
ll-loops -Iinclude -DVERBOSE -c texstore.c
dxe3gen -o dxtn.dxe -E _fetch_ -E _tx_ -D "DXTn codec" -U maindll.o dxtn.o texst
ore.o
"dxe3gen" non è riconosciuto come comando interno o esterno,
 un programma eseguibile o un file batch.
mingw32-make: *** [dxtn.dxe] Error 1

C:\MinGW\bin\fxt1>


Allora? che è successo? Ma è compilata? Se si dove sta?:o

Titolo: Compilazione Dxtn.dll
Inserito da: goriath il 07 Luglio 2005, 19:53:07
EDIT: Ok ho appena scritto quello che scrisse Sydney e come lui ho usato i due comandi finali ovvero mingw32-make --file mkfiles/makefile.mgw e mingw32-make --file mkfiles/makefile.mgw dll

E rispettivamente per il primo ho ottenuto:

(https://www.forumzone.it/public/uploaded/goriath/20057720431_Clipboard01.gif)

E per il secondo:

(https://www.forumzone.it/public/uploaded/goriath/200577204214_Clipboard02.gif)

Cioè proprio come ha scritto Sydney, ed anche io confermo che mi son trovato la dxtn.ll e il codec.exe delle medesime dimensioni

Quindi la dxtn.dll sarebbe compilata adesso? Ed ovviamente senza che li scriva, aggiungo tutti gli interrogativi posti da lui stesso all' inizio del topic; sono ansioso di conoscere :h

P.S. Dopo la compilazione, rimanendo nella cartella fxt1, se digito alt-i mi richiama il codec.exe; perchè?



Questo messaggio è stato aggiornato da goriath il 07/07/2005  alle ore  20:48:51
Titolo: Compilazione Dxtn.dll
Inserito da: benna il 08 Luglio 2005, 12:28:31
complimenti! ce l'hai fatta!
per quanto riguarda il codec.exe non ho assolutamente idea a cosa serva

Titolo: Compilazione Dxtn.dll
Inserito da: benna il 15 Dicembre 2005, 18:02:33
a quanto pare Daniel ha rilasciato da pochi giorni la versione 1.1 della dll, il link è nella sua homepage