Manuál: Windows

Testování domácích úkolů a výuka většiny skupin bude probíhat na Linuxu, proto doporučujeme jej vyzkoušet i na vlastnom počítači. Kromě přeinstalace OS máme dve možnosti jak vyzkoušet Linux v rámci Windows.

  1. WSL, čo je simulácia Linuxu vytvorená Microsoftom

  2. virtualizovať ozajstný Linux — spustiť bez inštalácie „v okne“

Dalšia z možností je pracovať s IDE Qt Creator. Ten nastavíme tak, aby používal sadu nástrojov MinGW, ktoré nám na Windows umožnia vytvoriť program v C.

V názvoch ciest nepoužívame medzery a používame iba znaky ASCII!
To platí na umiestnenie nástrojov pri ich inštalácii, a rovnako aj pri programovaní, kde máme uložené zdrojové súbory, respektíve repozitár. Problémový je v tom prípade adresár Program Files/ alebo názov užívateľa s medzerou/diakritikou v Users/.

Instalace nástrojů

Terminál je dostupný ako program Powershell. Pokiaľ máme WSL, používame bash terminál našej distribúcie rovnako ako na Linuxe.

Možnosti vývojových prostředí

1. Windows Subsystem for Linux + IDE/editor

Linux, a teraz ako jadro operačného systému, je napísaný v C. Jeho prostredie je teda na C prirodzene prispôsobené. Viaceré nástroje — a nielen pre C, ale majoritu jazykov — sú pre Linux. Uvedomil si to aj Microsoft a aktívne vyvíja jeho simuláciu — WSL — priamo vo Windows, aby uľahčil vývojárom prácu.

Všetky potrebné nástroje budeme mať k dispozícii v jednom termináli. Neprídeme o grafické rozhranie — zvolíme IDE, ktoré podporuje spoluprácu s WSL. Vybrat si můžete:

Nebo můžete pracovat v textovém editoru přímo v terminálu, například ve vimu.

Windows Subsystem for Linux (WSL)

Umožňuje vývojárom priamo vo Windows spúšťať programy určené pre Linux. Nespomaľuje systém.

Nevýhodou môže byť fakt, že k dispozícii nemáme plnohodnotné grafické prostredie, ako sme zvyknutí na typickej distribúcii Linuxu. Tento problém sa ale prekonať dá, viaceré IDE už totiž umožňujú s WSL spoluprácu — kedy IDE pobeží vo Windows, no všetky potrebné veci, ako napríklad kompiláciu a ladenie, vykonáva vo WSL. Možnosťou je tiež vyhnúť sa IDE úplne a programovať v textovom editore v termináli, např. ve vimu.

Existuje spôsob, ako prenášať aj grafické aplikácie — X11 forwarding — ktorému sa manuál nevenuje.
Aktivácia
WSL je dostupný iba na Windows 10 a vyšším!
  1. Pred inštalovaním WSL potrebujeme zapnúť:

    • Virtual Machine Platform, ktorý sa nachádza medzi voliteľnými funkciami systému Windows.

    • virtualizáciu v BIOSe. Každý systém má toto nastavenie niekde inde, využite teda svoj obľúbený webový vyhľadávač.

  2. Spustíme Powershell ako správca a vykonáme:

     Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    • Počítač môže vyžiadať reštart.

  3. Nainštalujeme z Windows Store distribúciu Ubuntu 22.04 (Jammy Jellyfish) (pozn.: existuje prirodzene viacero možností, manuál je v súlade s uvedenou).

    wsl ubuntu 22 04

  4. Inicializujeme distribúciu prvým spustením, je dostupná medzi programami pod názvom Ubuntu. Budeme požiadaní o vytvorenie užívateľského konta, zvolíme ľahko zapamätateľné heslo — bude vyžadované, keď budeme neskôr žiadať administrátorské práva cez sudo.

    • Programy v distribúcii budú pravdepodobne neaktuálne. V termináli spustíme cez správcu programových balíkov apt aktualizáciu:

       sudo apt update && sudo apt upgrade

      Apt si pri nájdení aktualizácií vypýta povolenie (Y). Na konci zosumarizuje správou:
      X upgraded, X newly installed, X to remove and X not upgraded.

      terminal apt updates

    • Pri riešení problémov postupujeme podľa dokumentácie MS.

2. Qt Creator + MinGW

Vzhľadom na to, že úlohy sa kontrolujú na Linuxe, niekedy môže dôjsť k odlišnému správaniu a vždy potrebujeme program otestovať aj na Aise.

Qt
Qt Creator

Budeme potrebovať inštalovať niekoľko pomocných nástrojov. Postup je nasledujúci:

  1. Pripravíme dodatočné nástroje:

    1. CMake

    2. Git for Windows

    3. Dr. Memory

  2. Nainštalujeme Qt Creator.

Git for Windows (verzovací systém)

Viac o git.

  1. Inštalujeme z oficiálnych stránok a volíme nasledujúce možnosti:

    install 1
    install 2
    install 5
  2. Po inštalácii je git dostupný v termináli, napríklad v Powershell. Nainštaluje nám aj program Git Bash, ktorý okrem gitu umožňuje niektoré iné príkazy z typického linux terminálu.

Na Windowse sa symboly nových riadkov v textových súboroch líšia od Linuxu. V prípade problémov nasledujúcim príkazom nastavíme automatický preklad medzi oboma verziami: git config --global core.autocrlf true

CMake

Viac o cmake.

  1. Z oficiálnych stránok nainštalujeme Latest Release, binárnu distribúciu, win64-x64 Installer.

    V názvoch ciest nepoužívame medzery a používame iba znaky ASCII!
    To platí aj pri inštalácii nástrojov, problémový je adresár Program Files/.
    cmake path

    Inštalujeme na systémový disk a nemeníme predvolené umiestnenie ak naozaj nemusíme.
    Ďalej zvolíme, že chceme cmake pridať do premennej PATH (nájde ho tak Qt a umožní nám tiež v termináli použiť iba názov cmake miesto celej cesty k programu):

Dr. Memory (ladenie)

Nástroj na hľadanie chýb pri práci s pamäťou. K dispozícii pre viaceré platformy, na Windowse nahradzuje nástroj valgrind.

Pripojenie na fakultný server

  • Z terminálu pomocou programu ssh. Pripojenie je popísané v kapitole Aisa a Kontr, SSH.

    • S WSL ako na Linuxe.

    • Cez Powershell, Windows 10 má od verzie 1803 (April 2018) ssh vstavané.

  • Ako záložná možnosť SSH klientom Putty.

Putty (SSH klient)

V nových verziách Windows je už v termináli ssh. Nemusíme teda inštalovať Putty a môžeme spustiť ssh napríklad pomocí Powershell.

putty.org
Umožňuje nám vzdialene sa pripojiť na linuxový server a odovzdať tak napríklad úlohu na Aise.

Prihlásenie na Aisu:

  1. Do programu zadáme adresu Host name v tvare xlogin@aisa.fi.muni.cz a port 22. Nastavenia si uložíme ako session:

    putty
  2. Po otvorení spojenia budeme požiadaní o heslo a mali by sme uvidieť Using username s naším xloginom:

    putty 2