Bitne Stvari
- Raspberry Pi OS Bookworm zahteva instalaciju Python paketa u posebnom, virtuelnom okruženju kako bi se izbegli problemi sa sistemskom verzijom Pythona.
- Za pretragu i instalaciju Python paketa, možete koristiti „apt“ menadžer paketa. Ako paket nije dostupan ili vam treba novija verzija, moraćete da koristite „pip“ alat u virtuelnom okruženju.
- Sve promene ili instalacije unutar virtuelnog okruženja neće imati uticaj na sistemsku verziju Pythona.
Imate li poteškoća sa instalacijom Python paketa koristeći „pip“ alat u Raspberry Pi OS Bookworm? Postoji nekoliko dodatnih koraka koje je potrebno preduzeti, uključujući kreiranje virtuelnog Python okruženja. Evo kako se to radi.
Šta se promenilo u Raspberry Pi OS Bookworm-u?
S obzirom na to da Raspberry Pi 5 nije kompatibilan sa ranijim verzijama Raspberry Pi OS-a, moraćete da instalirate najnoviju verziju „Bookworm“. To je jedna od stvari koju treba uzeti u obzir prilikom prelaska sa starijih modela na Raspberry Pi 5.
U ranijim verzijama Raspberry Pi OS-a, zasnovanih na Debianu (Buster i stariji), Python biblioteke su mogle biti instalirane direktno, na nivou celog sistema, koristeći „pip“ menadžer paketa. Međutim, to više nije slučaj u novom Raspberry Pi OS Bookworm-u.
Kako dokumentacija Raspberry Pi objašnjava, problem je nastao jer je upotreba alata specifičnog za Python, kao što je „pip“, mogla izazvati sukobe sa „apt“ menadžerom paketa operativnog sistema.
Stoga, počevši od Bookworm-a, kada se koristi „pip“, paketi moraju biti instalirani u zaštićeno virtuelno Python okruženje, što garantuje da neće doći do interferencije sa sistemskom verzijom Pythona.
Ukoliko pokušate da upotrebite komandu `pip install [naziv_paketa]` na bilo kom drugom mestu u sistemu, dobićete grešku koja počinje sa:
error: externally-managed-environment× Ovo okruženje je spolja upravljano
╰─> Za instalaciju Python paketa na nivou sistema, pokušajte sa `apt install
python3-xyz`, gde je xyz paket koji pokušavate da instalirate.
Kako pretraživati Python pakete pomoću „apt“?
Prvo što bi trebalo da proverite je da li je Python paket koji vam je potreban dostupan za instalaciju putem „apt“ menadžera paketa, na nivou celog sistema. Pakete možete tražiti u zvaničnom repozitorijumu koristeći komandu `apt search`. Na primer:
apt search numpy
Obratite pažnju na naziv paketa, u ovom slučaju `python3-numpy` (za Python verziju 3), a zatim ga instalirajte koristeći `apt` (uz prefiks `sudo` za neophodne administratorske privilegije):
sudo apt install python3-numpy
Ukoliko Python paket koji vam je potreban nije dostupan putem „apt“ menadžera paketa, ili vam je potrebna novija verzija, moraćete da upotrebite „pip“ alat specifičan za Python da biste ga instalirali – unutar virtuelnog Python okruženja.
Kako kreirati virtuelno Python okruženje?
Da biste instalirali Python paket pomoću „pip“ alata u Raspberry Pi OS Bookworm-u, prvo ćete morati da kreirate virtuelno Python okruženje koristeći `venv`. Mi smo naše nazvali „muo-projekat“, ali možete koristiti bilo koje ime:
python -m venv muo-project
Završetak ovog procesa može potrajati, u zavisnosti od modela Raspberry Pi koji koristite. Nakon toga, moraćete da pređete u novostvoreni direktorijum okruženja, koji sadrži kompletnu Python distribuciju, i da ga aktivirate:
cd muo-project
source bin/activate
Sada je virtuelno Python okruženje spremno za upotrebu, a pored komandne linije će biti prikazano njegovo ime – u ovom slučaju `muo-project`. To ukazuje da više ne koristite sistemsku verziju Pythona, već onu unutar vašeg virtuelnog okruženja. Zbog toga, sve promene koje napravite ili moduli koje instalirate neće uticati na sistemski Python.
Važno je napomenuti da ćete, ukoliko ponovo pokrenete Raspberry Pi, morati ponovo da aktivirate Python okruženje kako biste ga ponovo koristili.
Ako želite da kreirate virtuelno Python okruženje sa kopijom svih Python modula trenutno instaliranih na nivou operativnog sistema, to možete učiniti dodavanjem oznake `–system-site-packages` u komandu. Na primer: `python -m venv –system-site-packages muo-project`.
Instalirajte Python pakete pomoću „pip“
Iz aktivnog virtuelnog Python okruženja, sada možete da instalirate sve pakete koji su vam potrebni pomoću komande `pip`. Na primer, da biste instalirali alatku za testiranje opterećenja sistema, Stressberry:
pip install stressberry
Ovim će se instalirati modul, zajedno sa svim potrebnim zavisnostima, unutar vašeg virtuelnog Python okruženja. Imajte na umu da će modul biti dostupan samo u tom okruženju, a ne na nivou celog sistema.
Nema više sukoba Python paketa
Iako instaliranje Python paketa u Raspberry Pi OS Bookworm koristeći „pip“ zahteva dodatne korake, prednost je u tome što se paketi tada nalaze u virtuelnom okruženju i na taj način ne mogu da ometaju ili naruše funkcionalnost samog sistema.