Wpis z mikrobloga

#qt #c++ #programowanie i #winows

Muszę zawołać jeszcze raz... I wołam @tell_me_more, bo pomagałeś.


Kompuluję program napisany w Qt pod Windows...


Podlinkowałem dynamicznie dll'ki i co tam chciał. Ku pamięci - wszedłem do start->qt->5.11->mingw->assistan
następnie w konsoli wszedłem do ścieżki gdzie jest exe i polecenie:
windeployqt.exe --quick .
dołączyło mi co trzeba. Teraz klikając na exe nie pluje się już o brak dll'ek.
Tylko taki mały detal jest... Program zajmuje 1Mb a dllki prawie Giga.
(ʘoʘ)

To jest chore... To musi się dać inaczej zrobić.
  • 13
@defoxe: no ma, qt to spora biblioteka, dlatego powinna być zainstalowana w systemie raz, a wzystkie aplikacje powinny linkować do niej dynamicznie. W przeciwnym razie będziesz miał na dysku wiele kopiii.

jak linkujesz statycznie zależnie od ustawień możesz mieć tylko dołączone używane funkcje, i program będzie mniej zajmować. Ale to zależy.

Z tym configure to odpal konsolę wejdź do katalogu z plikiem .pro i wywołaj te polecenia. Tylko poszukaj gdzie ten
@tell_me_more: no ale dajmy na to, programik hello world generalnie wymagający Gigabajta z nadzieją, że użytkownik jeszcze kiedyś gdzieś użyje przykładowo Qt5widgets.dll to trochę nieporozumienie. Oczywiście wkompilowywanie tego za każdym razem (nawet tylko używanych funkcji) też jest głupie. Może nawet bardziej. Jednak Wychodzi mi na to, że qt to trochę jak dotnet. Najpierw parę giga bibliotek, by odpalić prosty program.
Kurcze na Debianie jakoś tego tak nie odbierałem. Kompiluje się, uruchamiam
@defoxe: Jeżeli dobrze zrozumiałem to skompilowałeś z linkowaniem dynamicznym do Qt, a przy użyciu aplki do deploymentu dołożyło Ci prawie giga dll-ek Qt?
Pokaż co masz dopisane w pliku .pro w definicji "QT +=" i jakie pliki znajdują się w "zedployowanym" folderze obok twojego .exe.
@KrzaQ2: @Razi91: @Pitex: Właśnie wpadłem wczoraj na to by zmienić na Release. Sam exe rozmiar ma mniejszy ale i "dokładanie" dllek działa inaczej. Złożyło jakieś 50MB. Jednak od razu zauważyłem, że wiele z tych dllek jest zupełnie niepotrzebnych (obsługa sieci i inne) - myślałem, że logiczniej to poskłada. Powyrzucałem je, aplikacja nadal działa, rozmiar po spakowaniu ostatecznie wyniósł 8MB. Jakoś specjalnie zadowolony nie jestem ale jest znośnie.

Powiedzcie mi