Przypadkiem odkryłem, że skrypt kompilacji dla Linuksa używał kompilacji „pakietowej", co oznacza, że optymalizacje CPU są ograniczone do ogólnych, aby wytwarzać przenośne pliki binarne, które można zainstalować na dowolnej platformie x86-64. Przez „używał" mam na myśli, że kompilacja pakietowa nie była jawnie wyłączona, więc była domyślnie włączona.
W każdym razie jest to teraz domyślnie wyłączone, ponieważ właściwe pakiety (.exe i .appimage) nie są budowane przez ten skrypt, który jest przede wszystkim przeznaczony do pomocy użytkownikom końcowym. Aby przywrócić poprzednie zachowanie, musisz uruchomić:
1$ sh build.sh --build-package --install --sudoNieużywanie opcji kompilacji pakietowej może zwiększyć wydajność na CPU o 20 do 30 % w zależności od Twojego sprzętu, dzięki optymalizacjom specyficznym dla platformy.
Wprowadziłem również nowy argument, który uruchomi polecenia aktualizacji Git, o których użytkownicy zdają się ciągle zapominać. Jest jednak pewien haczyk: aktualizacja kodu źródłowego poprzez wywołanie Git z wnętrza skryptu nie aktualizuje skryptu na potrzeby bieżącego uruchomienia, więc ta metoda nie działa, gdy modyfikowany jest sam skrypt. Na szczęście nie zmieniamy tego skryptu często.
Argument do aktualizacji kodu źródłowego i submodułów (Rawspeed, Libraw):
1$ sh build.sh --update --install --sudoZmodyfikowałem również wewnętrzne mechanizmy tego skryptu, aby automatycznie:
- aktualizować bazę obiektywów Lensfun,
- dodać globalny skrót systemowy (plik .desktop), aby oprogramowanie było globalnie dostępne z menu aplikacji,
- dodać globalne polecenie systemowe, aby ansel był globalnie dostępny z terminala.
Celem wszystkich tych zmian jest oczywiście uczynienie bardziej przyjaznym dla użytkownika korzystania z samodzielnie skompilowanej wersji oprogramowania, co pozwala poprawić wydajność, zwłaszcza w przypadku komputerów bez GPU. Polecenie „wszystko za jednym zamachem" to:
1$ sh build.sh --update --install --sudo --clean-allAle oczywiście musisz najpierw jeszcze raz ręcznie uruchomić aktualizację Git, aby zaktualizować sam skrypt:
1$ git pull --recurse-submoduleAlternatywnie możesz bezpośrednio pobrać skrypt kompilacji i zastąpić stary build.sh w katalogu głównym kodu źródłowego.
Translated from English by : Claude. In case of conflict, inconsistency or error, the English version shall prevail.