{{indexmenu_n>5000}} ======= Windows Subsystem for Linux (WSL) ======= Operační systém Windows 10 umožňuje instalaci tzv. [[https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux|Windows Subsystému pro Linux]] (WSL). Lze tak získat vývojové prostředí podobné tomu, které používáme v předmětu PRP. V praxi tak můžeme přímo spouštět nativní aplikace pro Linux, jako třeba příkazový interpret [[https://cs.wikipedia.org/wiki/Bash|Bash]] používaný na cvičení při práci s operačním systémem Ubuntu. Díky tomu je možné spouštět a instalovat programy ve Windows prostředí stejně pohodlně jako v Ubuntu. Návod na instalaci je možné najít například zde: * [[https://docs.microsoft.com/cs-cz/windows/wsl/install-win10]] Instalace je jednoduchá: v PowerShell (coby administrátor) spustíme příkaz: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux Po skončení procesu restartujeme Windows a instalujeme Ubuntu z [[https://www.microsoft.com/cs-cz/p/ubuntu/9nblggh4msv6|Microsoft Store]]: Doporučujeme používat LTS verze Ubuntu, neboli Ubuntu 18.04, 20.04, ... Při instalaci je potřeba zvolit uživatelské jméno a heslo, které se bude používat v subsystému. Poté již stačí spustit příkaz "Ubuntu", například z nabídky Start. ===== Instalace potřebných balíčků ===== Po instalaci Ubuntu prostředí již stačí nainstalovat vývojové nástroje. To je v prostředí Ubuntu přímočaré použitím příkazu ''apt-get''. Pro instalaci je však potřeba spustit instalační program ''apt-get'' s právy adminstrátora (v unix světě označovaný jako root), což lze snadno prostřednictví příkazu ''sudo'', který vyžaduje ověření vaší indentity, proto vyžaduje zadání vašeho hesla. Před instalací nástrojů doporučuji aktualizovat systém příkazem: sudo apt-get update Základní sada vývojových nástrojů používaných na PRP se skládá z kompilátoru ''gcc'' a kompilátoru ''clang'', nástroje pro řízení překladu ''make'' a pomocné utility pro zobrazení adresářové struktury ''tree''. Instalaci těchto nástrojů provedeme přímočaře prostřednictvím příkazu sudo apt-get install gcc clang make tree zip unzip Tj. jako administrátor (''sudo'') spustíme program ''apt-get'' po kterém chceme nainstalovat (''install'') balíčky ''gcc'', ''clang'', ''make'' a ''tree''. Vše ostatní je identické pro všechny počítače, a proto již není nutné naše další interakce s počítačem. Volitelně můžete přidávat další užitečné balíčky, například: sudo apt-get install tree cppcheck git subversion ===== Instalace programu Valgrind ===== Na cvičeních i v odevzdávacím systému budeme používat program Valgrind pro kontrolu práce s pamětí. Ten je možný také používat v prostředí WSL. /*Dne 6.10.2018 se zdařila instalace Valgrind standardně pomocí příkazu:*/ sudo apt-get install valgrind ===== Vývoj C programů v kombinovaném prostředí Windows a Ubuntu ===== Windows Subsystem for Linux nám umožňuje editovat kód pod Windows (např. ve VS Code) a překládat i testovat v terminálu WSL (např. v Ubuntu). Je přitom dobré vědět, kde najdeme svůj kód, své soubory v „tom druhém“ OS. Adresář home z Ubuntu najdeme pod Windows jako: C:\Users\\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home Naopak je to o něco jednodušší. Adresář ve Windows: C:\Users\\Documents na jdeme v Ubuntu jako: /mnt/c/Users//Documents/ /* Následující instrukce mají tedy patrně už jen historický význam. \\ === Instalace programu Valgrind ze zdrojových souborů === V případě, že balíček "''valgrind''" nefunguje, jako tomu bylo v minulosti(([[https://github.com/Microsoft/BashOnWindows/issues/120|Issue 120]])) je možné zkusit ''valgrind'' zkompilovat přímo ze zdrojových kódů. Postup kompilace a instalace z příkazové řádky (bash): # valgrind will be compiled in home directory - can be changed cd ~ # download source codes to "valgrind" directory wget http://valgrind.org/downloads/valgrind-3.11.0.tar.bz2 # extract the archive tar xvf valgrind-3.11.0.tar.bz2 # install package automake - prerequisites sudo apt-get install automake # compile cd valgrind-3.11.0/ ./autogen.sh ./configure make sudo make install */ ===== Win10 VS Code s WSL ===== Máte-li nainstalované prostředí WSL a v rámci Win10 Visual Studio Code (VS Code), je možné kombinovat WSL prostředí (termínál) s běžícím VS Code prostřednictvím balíčku [[https://code.visualstudio.com/docs/remote/wsl-tutorial|Remote - WSL]]. * Nainstalujte např. Ubuntu 20.04 v rámci WSL * Ve Win10 nainstalujte [[https://code.visualstudio.com/docs/remote/wsl-tutorial|VS Code]] * Doinstalujte rozšíření [[https://code.visualstudio.com/docs/remote/wsl-tutorial|Remote - WSL]] * Spusťte WSL, ve kterém spusťte ''code'' a dojde k propojení WSL a VS Code {{:courses:b0b36prp:tutorials:win10-wsl-vscode-1.png?400|}} {{:courses:b0b36prp:tutorials:win10-wsl-vscode-2.png?400|}} {{:courses:b0b36prp:tutorials:win10-wsl-vscode-3.png?400|}} {{:courses:b0b36prp:tutorials:win10-wsl-vscode-4.png?400|}}