Vzpostavitev delovnega okolja
Pri predmetu bomo uporabljali Python (z nekaj dodatnimi knjižnicami) in OCaml, oboje v urejevalniku Visual Studio Code.
Namestite si urejevalnik Visual Studio Code za vaš operacijski sistem. Namestite si razširitvi za Python in Ocaml.
Za namestitev Pythona in Ocamla imate dve možnosti: direktno na računalniku ali z uporabo dockerja.
1. Vzpostavitev programskega okolja na lastnem računalniku
- Namestite si Python in poskrbite, da je dodan v pot (
Path) - Z uporabo orodja pip namestite knjižnice requests, pandas, dash
- Namestite si OCaml. Novejša različica OCaml 4.12 zahteva rahlo naprednejšo uporabo taskov v VSCode. Uporabniki Mac OS in Linux si namestite OCaml primeren za vaš sistem.
Taska za zagon Python in Ocaml datotek sta na voljo na repozitoriju predmeta.
Pri namestitvi na Windowsih je potrebno nekoliko popraviti taske za Ocaml:
"label": "OCaml",
"type": "shell",
"command":
"C:\\OCaml64\\usr\\local\\bin\\ocaml-env.exe exec -- C:\\OCaml64\\home\\???\\.opam\\4.12.0+mingw64c\\bin\\ocaml.exe -init \\\"${file}\\\""
kjer ??? nadomestite z uporabniškim imenom, s katerim ste prijavljeni na računalnik. Pri uporabniškem imenu pobrišete vse presledke in neangleške znake nadomestite z angleškimi verzijami (č -> c), npr. namesto Filip Kopriveč, uporabite FilipKoprivec. Prav tako pri uporabi 32-bitne namestitve zamenjajte vse 64 z 32.
Preverite, da ste namestili pravilno verzijo, saj namestitveni program posodabljajo. Odprite
C:\OCaml64\home\???\.opam\ in v task namesto 4.12.0+mingw64c prilepite pravilno verzijo.
2. Vzpostavitev programskega okolja na lastnem računalniku z uporabo Dockerja
Namesto da si Python in Ocaml namestite direktno na računalnik lahko uporabite docker kontainerje, ki poskrbijo, da so namestitve ločene. Slaba stran te namestitve je dejstvo, da (trenutno) porabi nekoliko več prostora na disku (prostor, ki ga potrebuje docker + 4.5 GB)
Pri namestitvi sledite navodilom iz https://code.visualstudio.com/docs/remote/containers, kamor se lahko obrnete, če pride do kakšnih napak.
- Namestite si docker za vaš operacijski sistem: https://docs.docker.com/get-docker/ in ga nastavite. Za sistem Windows si morate dodatno namestiti tudi WSL (https://docs.microsoft.com/sl-si/windows/wsl/wsl2-kernel), na kar vas ob prvem zagonu opozori tudi docker.
- V VSC si namestite razširitev Remote - Containers.
- Uredite si git v remote kontainerju https://code.visualstudio.com/docs/remote/containers#_working-with-git.
Za uporabo klonirajte repozitorij predmeta in zaženite ukaz (ctrl + shift + P) Remote-Containers: Rebuild and Reopen in Container.
Prvi zagon traja nekaj časa, saj mora naložiti celotno sliko, vsi naslednji zagoni pa so hitri.
Ko se projekt odpre, lahko normalno uporabljate taske, ki so na voljo na repozitoriju predmeta.
3. Namestitev s pomočja upravljalca paketov esy
Če vas zanima delo na večjih ocaml projektih povezanih z medmrežjem, si lahko ocaml namestite prek ogrodja esy
Barvanje in pomoč v urejevalniku visual studio code
Namestite si razširitev: https://marketplace.visualstudio.com/items?itemName=ocamllabs.ocaml-platform in sledite navodilom. Razširitev deluje brez posebnih nastavitev za manjše datoteke, pri večjih projektih je potrebno nekaj nastavitev za pravilno prepoznavanje OCamla.
Preverjanje namestitve
Odprite poljubno Ocaml datoteko (recimo to) in poženite ukaz Run Tasks in izberite task OCaml.
V konzolo vpišite fakulteta 10;; in preverite, če je rezultat pravilen.
Pogoste težave in odgovori
1. Ukaz pip javi da pip ne obstaja, čeprav je python delujoč in dodan v PATH.
Problem je lahko v tem, da se pip ni pravilno namestil. Na windowsih lahko vidite, da v Scripts ni nobenih datotek. Gre za znano težavo pri nameščanju pythona. Trenutno je to najlažje odpraviti tako, da namestite starejšo verzijo pythona (3.6 ali nižje).
2. Terminal pri zagonu taskov na windowsu javi, da ne najde datoteke.
Nekatere verzije windowsa zahtevajo drugačno obliko zapisa za zagon. V obeh taskih trojne znake \\\ zamenjajte z enojnimi \. Del taska tako postane \"${file}\".
3. Pri nameščanju OCaml-a dobim napako "Cygwin instalation is incomplete".
Izklopite vse antivirusne programe, odstranite obstoječo namestitev OCamla in namestitveni program za OCaml zaženite kot administrator.
4. Ob zagonu ocaml programa se nič ne zgodi, ali pa dobim napako "Error: Unbound module Stdlib"
Verjetno je prišlo do napake pri namestitvi cygwina. Možna rešitev je, da ročno nastavite sistemsko spremenljivko "OCAMLLIB" na mesto namestitve ocamla: "C:\OCaml64\home\UPORABNISKO_IME.opam\4.12.0+mingw64c\lib\ocaml" (Kjer pravilno vpišete svoje uporabniško ime in verzijo ocamla).
5. Na linuxu dobim vse možne težave
Preverite, da imate nameščeno novejšo verzjo opama (vsaj 2.X)
6. Na računalniku ne znam nastavit sistemskih spremenljivk
https://superuser.com/a/1528432