• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Qt włączenie bibliotek do programu .exe

0 głosów
371 wizyt
pytanie zadane 11 września 2017 w C i C++ przez Huberti Gaduła (3,570 p.)
edycja 11 września 2017 przez Huberti

Witam, mam pytanie. Sprawdziłem, że aby aplikacja deskopowa zaprojektowany w Qt działała poprawnie na innych komputerach potrzebuje ona bibliotek (obrazek).

 

 

 

 

Moje pytanie: czy można w jakiś sposób włączyć biblioteki .dll do pliku .exe?

komentarz 11 września 2017 przez DragonCoder Pasjonat (22,190 p.)
Jezeli, aplikacja jest napisana w qt, i dziala na Twoim komputerze, to powinna dzialac na innych, o tym samym systemie i architekturze
komentarz 11 września 2017 przez Huberti Gaduła (3,570 p.)
Bez tych bibliotek nie działa również u mnie na komputerze.

Więc, można w jakiś sposób połączyć je z programem .exe?
komentarz 11 września 2017 przez Chess Maniak (72,430 p.)
Musisz chyba skompilować ten program razem z tym bibliotekami.
1
komentarz 11 września 2017 przez Criss Mędrzec (171,460 p.)

Cały zamysł bibliotek dll (dynamic link library) jest, żeby tego nie robić. Musisz mieć całą biblioteke skompilowaną do postaci archiwum i do takiej linkować Wtedy zostanie wkompilowana w twój executable. Nigdy nie korzystałem z Qt, więc nie wiem jak to u nich wygląda.

komentarz 11 września 2017 przez Huberti Gaduła (3,570 p.)
Wielkie dzięki Criss, bardzo pomogłeś. ;)
komentarz 11 września 2017 przez Criss Mędrzec (171,460 p.)
O, nie spodziewałem się. Proszę bardzo :)

3 odpowiedzi

+1 głos
odpowiedź 11 września 2017 przez Eryk Andrzejewski Mędrzec (159,400 p.)
wybrane 14 września 2017
 
Najlepsza
Można linkować biblioteki statycznie, natomiast jeśli dobrze pamiętam to darmowa licencja Qt wymaga dynamicznego linkowania bibliotek.
komentarz 11 września 2017 przez amb00 Bywalec (2,000 p.)
edycja 12 września 2017 przez amb00
Ale chyba wtedy wymaga tylko dynamicznego linkowania jak się zamknie kod źródłowy,
1
komentarz 11 września 2017 przez j23 VIP (108,680 p.)

@amb00, raczej odwrotnie. Możesz użyć statycznych bibliotek pod warunkiem, że kod aplikacji będzie otwarty. Jeśli nie chcesz upubliczniać kodu aplikacji i chcesz jechać na darmowej licencji, wtedy musisz użyć bibliotek dll.

 

Tak w każdym razie rozumiem licencję LGPL...

komentarz 12 września 2017 przez amb00 Bywalec (2,000 p.)
@j23 Racja, już poprawiłem ;)
0 głosów
odpowiedź 11 września 2017 przez Bondrusiek Maniak (53,110 p.)

Witam,

spróbuj dodać libEGL.dll . oraz dodaj folder platforms(w tym folderze znajdują się dll, które są przeznaczone do działania na wybranym systemie np.qwindows.dll ).

Tu masz przykład statycznej kompilacji: https://www.youtube.com/watch?v=chMNUzpN4pw&t=1s

0 głosów
odpowiedź 11 września 2017 przez mokrowski VIP (113,040 p.)
Qt jest dystrybuowane na następujących licencjach: https://www.qt.io/licensing-comparison/

Jak zerkniesz do FAQ (licencji GPL i LGPL), dowiesz się (podsumowując) że kompilując statycznie, naruszasz te licencje otwarte. Oczywiście możesz to zrobić w celach edukacyjnych dla siebie (czyli skompilować statycznie), ale nie dla osiągania korzyści majątkowych i dystrybucji aplikacji dalej. Jeśli chcesz ją dystrybuować bez opłat za licencję komercyjną, powinieneś załączyć biblioteki *.dll i dać możliwość uzyskania kodu źródłowego Twojej aplikacji jeśli ma to być GPL2/GPL3 lub załączyć *.dll Qt bez zmian i wtedy możesz zamknąć kod samej aplikacji. Zwróć uwagę także które moduły mogą być użyte. Tak to wygląda od strony prawnej.

Co do technicznej i edukacyjnej strony, skompiluj Qt statycznie i kompiluj aplikację także w tym trybie. Domyślnie Qt w wersji otwartej nie jest dostarczane z bibliotekami statycznymi.

Podobne pytania

0 głosów
2 odpowiedzi 128 wizyt
pytanie zadane 31 sierpnia 2017 w C i C++ przez Jakub 0 Stary wyjadacz (13,480 p.)
0 głosów
2 odpowiedzi 203 wizyt
pytanie zadane 21 marca 2017 w C i C++ przez kosabdsm Początkujący (390 p.)
0 głosów
3 odpowiedzi 231 wizyt
Porady nie od parady
Zadając pytanie postaraj się o odpowiedni tytuł, kategorię oraz tagi.Tagi

67,233 zapytań

114,194 odpowiedzi

242,038 komentarzy

45,643 pasjonatów

Przeglądających: 342
Pasjonatów: 10 Gości: 332

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...