logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak stworzyć samodzielną apliakcję w Pythonie Ubuntu

pyzdraa 28 Lut 2023 16:20 609 2
REKLAMA
  • #1 20463033
    pyzdraa
    Poziom 3  
    Posty: 112
    Ocena: 9
    Hej tworze aplikacje w pyhtonie na systemie ubuntu. Udało mi się napisać już kod który działa. Wyświetla się okienko i po naciśnięciu przycisku łączy się z serwerem. Problem mam taki że nie wiem jak zrobić z tego kodu jeden odpalany plik który mogę przenieś na inny komputer. Chciałbym aby ten plik posiadł biblioteki żeby nic nie trzeba było instalować. Jeżeli miał by to być plik setup to też nie jest źle. Natomiast teraz działa mi to tylko z poziomu Visual Study Code
  • REKLAMA
  • Pomocny post
    #2 20470823
    jvoytech
    Poziom 22  
    Posty: 364
    Pomógł: 61
    Ocena: 136
    Zainstaluj pyinstaller
    pip install -U pyinstaller

    a potem to już z górki:
    pyinstaller --noconsole --onefile myapp.py

    W katalogu "dist" będzie jeden duży plik uruchamialny. Bez pierwszej opcji "--noconsole" przy uruchamianiu pojawi się okienko z konsolą dla funkcji "print". Z tą opcją tego okienka nie będzie jak również gdy twój skrypt ma rozszerzenie ".pyw", wtedy "--noconsole" jest domyślne.

    Druga opcja tworzy jeden plik ze wszystkimi bibliotekami w środku. Spróbuj wygenerować bez tej opcji :)

    --
    Jedna mała uwaga. W Ubuntu "--noconsole" będzie zignorowane.
  • Pomocny post
    #3 20481499
    mwilkowski1
    Poziom 10  
    Posty: 42
    Pomógł: 2
    Ocena: 9
    Pierwsze pytanie - czy aplikacja jest "jednoplikowa" (czyli, że to tylko jeden skrypt pythona), czy też masz kilka modułów? Są co najmniej trzy metody aby to osiągnąć:
    1. pyinstaller - niemniej ma on swoje ograniczenia, szczególnie gdy się używa różnych bibliotek (ja miałem z nim wiele problemów).
    2. skrypt, który może być plikiem wykonywalnym (chmod +x plik.py) i jeśli wtedy na górze plik dasz dobrego shebanga (czyli #!/usr/bin/env python3) to jeśli tylko w systemie jest python3 (a dzisiaj już zawsze jest) to twój skrypt się uruchomi. Warunkiem jest, abyś nie musiał mieć bibliotek zewnętrznych (takich, które trzeba instalować pipem).
    3. można po prostu zrobić setup.py, i zrobić dwa proste skrypty bashowe - pierwszy do automatycznej instalacji środowiska (utworzenia venv i uruchomienia setup.py), a drugi do activate virtualenva i uruchomienia aplikacji w środku.

    Jeśli chciałbyś poznać więcej szczegółów to mogę podrzucić przykłady tego 3-go sposobu, bo on jest najbardziej popularny i najmniej zawodny.
REKLAMA