[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: aiutino compilazione driver



On 14/07/2016 14:10, Piviul wrote:

Mediatek[¹] ho scaricato il file
mt7610u_wifi_sta_v3002_dpo_20130916.tar.bz2,
[...]
$ sudo make
[...]
/home/administrator/Scaricati/mt7610u_wifi_sta_v3002_dpo_20130916/os/linux/../../sta/sta_cfg.c:5401:85: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]
             snprintf(extra, size, "Driver version-%s, %s %s\n", STA_DRIVER_VERSION, __DATE__, __TIME__ );

davvero interessante :-)

Se lo stesso sorgente è compilato su differenti PC, con differenti configurazioni, ha come possibile risultato un eseguibile diverso... almeno così era fino a poco tempo fa. Questo però è un punto critico dal punto di vista della sicurezza, proprio perché non puoi sapere se quell'eseguibile è stato ottenuto o meno dal sorgente originario.

Per questo è stato creato un progetto per fare in modo che la compilazione di un sorgente generi sempre lo stesso eseguibile finale (== identico al bit) per lo stesso target. Avevo letto tempo fa che si voleva applicare tutto questo a Debian, ma poi non mi sono più tenuto aggiornato.

Quello che vediamo qui è che la tua compilazione genera un eseguibile (in questo caso una libreria/modulo) che può essere diverso a seconda della configurazione iniziale del sistema e quindi non può essere verificato se è stato ottenuto dai sorgenti originari o meno.

cc1: some warnings being treated as errors

infatti, se guardi nella riga dell'errore è indicato: -Werror=date-time
cioè di trattare come errore il warning date-time

Quindi per riuscire a compilarlo è sufficiente fare in modo di eliminare quel -Werror=date-time

ed infatti:
$ man gcc
[...]
 -Wdate-time
Warn when macros "__TIME__", "__DATE__" or "__TIMESTAMP__" are encountered as they might prevent bit-wise-identical reproducible compilations.
[...]

... poi ho visto che ti sono state suggerite altre soluzioni migliori per non usare questi sorgenti

Ciao
Davide

[¹] http://www.mediatek.com/en/downloads1/downloads/

--
Dizionari: http://linguistico.sourceforge.net/wiki
Client di posta: http://www.mozilla.org/products/thunderbird
GNU/Linux User: 302090: http://counter.li.org
Non autorizzo la memorizzazione del mio indirizzo su outlook


Reply to: