Próbuję skompilować sterownik dla adaptera Netis WF2190. Tak, właśnie pobrałem najnowszą z nich.
Jak mogę wyłączyć -Werror=date-time
kompilację? Nie mogę go nigdzie znaleźć w skrypcie kompilacji, więc uważam, że musi to być jakieś globalne ustawienie domyślne. Oczywiście kod po prostu próbuje osadzić datę / czas kompilacji w danych wyjściowych, więc nie powinno być problemu z wyłączeniem tego ostrzeżenia.
Oto niektóre otrzymywane przeze mnie ostrzeżenia, które są traktowane jako błędy:
/home/andy/RTL8812AU_linux_v4.3.8_12175.20140902/driver/rtl8812AU_linux_v4.3.8_12175.20140902/core/rtw_debug.c:66:1: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]
/home/andy/RTL8812AU_linux_v4.3.8_12175.20140902/driver/rtl8812AU_linux_v4.3.8_12175.20140902/core/rtw_debug.c:66:1: error: macro "__TIME__" might prevent reproducible builds [-Werror=date-time]
cc1: some warnings being treated as errors
date-time
Ostrzeżenie nowego w gcc 4.9 myślę - jest ewentualnie włączony niejawnie przez-Wall
(i przekształcony błędu niejawnie przez-Werror
). Możesz spróbować wyłączyć to jawnie, używając-Wno-
formularza, tj.-Wno-error=date-time
Dodanego do,CFLAGS
ale zgaduję i nie mogę go przetestować.Odpowiedzi:
Ostrzeżenie o dacie i czasie jest nowością w gcc 4.9 - myślę, że może być domyślnie włączone przez
-Wall
(i zamienione w błąd niejawnie przez-Werror
).Możesz spróbować wyłączyć to jawnie, korzystając z
-Wno-
formularza, np. Dodającdo
CFLAGS
.źródło
Próbowałem kilkakrotnie dodając wiersz „Wno-error = date-time” do CFLAGS, ale nie działało.
Jak dotąd najłatwiejszym rozwiązaniem było znalezienie pliku, który generował wiersz „__DATE__” przez wykonanie
który (dla kodu źródłowego, z którym pracuję) dał mi plik
Po prostu zmieniłem to na ciąg bez zmiennej, usuwając znaki cudzysłowu, tj
Kompilacja mogła być kontynuowana
EDYCJA: Jak wspomniano wcześniej, użyj
make clean
przed uruchomieniem config i wykonaj, a nawet lepiej, wypakuj świeżą wersję z pliku zip / tarźródło
Lepszym rozwiązaniem może być usunięcie szkodliwego makra poprzez usunięcie wiersza 66 z pliku rtw_debug.c.
Teraz możesz kontynuować kompilację:
źródło