prog:wsl
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| prog:wsl [2021/07/11 23:18] – Mise à jour root | prog:wsl [2025/06/23 09:55] (Version actuelle) – [Installation] : ajout de networkingMode=mirrored root | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====Premiers pas==== | + | =====Installation===== |
| - | + | ||
| - | ===Installation=== | + | |
| * Sous PowerShell (Admin) : | * Sous PowerShell (Admin) : | ||
| Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux | Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux | ||
| + | Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform | ||
| - | * Installer la distribution Linux le Windows Store : https:// | + | * Définir une adresse IP |
| - | * Sous PowerShell (Admin) : | + | Cette étape ne doit être faite que si '' |
| - | Enable-WindowsOptionalFeature | + | Pour connaître l' |
| + | |||
| + | Il n'est pas possible de définir une adresse IP statique sur '' | ||
| + | |||
| + | Commencer par redémarrer l' | ||
| + | |||
| + | <code bash> | ||
| + | wsl -d " | ||
| + | netsh interface ip add address " | ||
| + | </ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | =====Distribution Ubuntu===== | ||
| + | |||
| + | * Installer la distribution Linux le Windows Store : https:// | ||
| * Lancer l' | * Lancer l' | ||
| Ligne 48: | Ligne 62: | ||
| [[https:// | [[https:// | ||
| - | ===Lancement=== | + | ====Lancement==== |
| La ligne de commande est identique à celle de la distribution. | La ligne de commande est identique à celle de la distribution. | ||
| Ligne 63: | Ligne 77: | ||
| <code bash> | <code bash> | ||
| - | apt-get update | + | apt update |
| + | apt upgrade | ||
| </ | </ | ||
| - | ====Gentoo==== | ||
| - | ===Installation=== | + | =====Configuration spécial WSL===== |
| + | |||
| + | * OpenGL | ||
| + | |||
| + | Pour avoir le support GPU / OpenGL, il suffit d' | ||
| + | |||
| + | * OpenCL | ||
| + | |||
| + | OpenCL n'est supporté pour le moment que par Intel. | ||
| + | |||
| + | Il faut installer les paquets '' | ||
| + | |||
| + | Si l' | ||
| + | |||
| + | <code bash> | ||
| + | apt install ocl-icd-libopencl1 ocl-icd-opencl-dev | ||
| + | cd /tmp/neo | ||
| + | wget https:// | ||
| + | wget https:// | ||
| + | wget https:// | ||
| + | wget https:// | ||
| + | wget https:// | ||
| + | wget https:// | ||
| + | wget https:// | ||
| + | sudo dpkg -i *.deb | ||
| + | </ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | =====Distribution Gentoo===== | ||
| + | |||
| + | ====Installation==== | ||
| * Télécharger le [[https:// | * Télécharger le [[https:// | ||
| Ligne 81: | Ligne 129: | ||
| #swap=8GB | #swap=8GB | ||
| #swapFile= | #swapFile= | ||
| - | localhostForwarding=true | + | |
| + | # Use networkingMode when you can't access on Internet. | ||
| + | networkingMode=mirrored | ||
| + | # localhostForwarding is not compatible with networkingMode=mirrored | ||
| + | #localhostForwarding=true | ||
| </ | </ | ||
| * Lancer la console Gentoo : '' | * Lancer la console Gentoo : '' | ||
| - | ===Configuration=== | + | ====Configuration==== |
| + | |||
| + | ===Créer / remplacer les fichiers=== | ||
| - | * Créer / remplacer les fichiers : | ||
| <file ini / | <file ini / | ||
| [network] | [network] | ||
| Ligne 121: | Ligne 174: | ||
| LDFLAGS=" | LDFLAGS=" | ||
| - | USE="-X -gtk -nls -doc -rdoc -alsa gmp threads openmp" | + | USE="X gtk -nls -doc -rdoc -alsa gmp threads openmp" |
| - | VIDEO_CARDS=" | + | VIDEO_CARDS=" |
| FEATURES=" | FEATURES=" | ||
| Ligne 147: | Ligne 200: | ||
| [[https:// | [[https:// | ||
| - | * Configure des options de compilation | + | Vous devez impérativement utiliser WSL 2 avec des drivers [[https:// |
| + | |||
| + | ===Configure des options de compilation=== | ||
| <file txt / | <file txt / | ||
| - | sys-devel/binutils default-gold | + | sys-devel/llvm gold |
| - | sys-devel/ | + | sys-devel/ |
| + | net-libs/ | ||
| + | |||
| + | sys-devel/ | ||
| + | sys-libs/ | ||
| + | |||
| + | dev-lang/ | ||
| + | </ | ||
| + | |||
| + | <file txt / | ||
| + | sys-devel/ | ||
| + | sys-devel/ | ||
| + | sys-devel/ | ||
| + | sys-devel/ | ||
| + | sys-devel/ | ||
| + | sys-devel/ | ||
| + | sys-libs/ | ||
| + | sys-libs/ | ||
| + | sys-libs/ | ||
| + | sys-devel/ | ||
| + | </ | ||
| + | |||
| + | <file txt / | ||
| + | COMMON_FLAGS=" | ||
| + | CFLAGS=" | ||
| + | CXXFLAGS=" | ||
| + | FCFLAGS=" | ||
| + | FFLAGS=" | ||
| + | LDFLAGS=" | ||
| </ | </ | ||
| - | * Installation des entêtes du noyau | + | ===Installation des entêtes du noyau=== |
| - | Exécuter '' | + | Exécuter '' |
| Récupérer alors les sources associées. | Récupérer alors les sources associées. | ||
| Ligne 165: | Ligne 248: | ||
| tar xvzf linux-msft-5.4.72.tar.gz | tar xvzf linux-msft-5.4.72.tar.gz | ||
| mv WSL2-Linux-Kernel-linux-msft-5.4.72 linux | mv WSL2-Linux-Kernel-linux-msft-5.4.72 linux | ||
| + | cd linux | ||
| + | cp / | ||
| + | gunzip config.gz | ||
| + | mv config .config | ||
| </ | </ | ||
| '' | '' | ||
| - | * Mettre à jour le système la première fois | + | ===Mettre à jour le système la première fois=== |
| <code bash> | <code bash> | ||
| Ligne 181: | Ligne 268: | ||
| emerge -C cpuid2cpuflags | emerge -C cpuid2cpuflags | ||
| - | sed -i "s/12sg/012sg/g" / | + | eselect profile list |
| + | eselect profile set default/ | ||
| + | |||
| + | sed -i "s/123szg/0123szg/g" / | ||
| eix-update | eix-update | ||
| emerge --oneshot --deep -va sys-devel/ | emerge --oneshot --deep -va sys-devel/ | ||
| Ligne 194: | Ligne 284: | ||
| # Update all packages with the newly built compiler | # Update all packages with the newly built compiler | ||
| # This will take a long time, ~1-5 hours | # This will take a long time, ~1-5 hours | ||
| - | emerge --oneshot --emptytree --deep @world | + | emerge --oneshot --emptytree --deep |
| - | emerge --oneshot --deep @preserved-rebuild | + | emerge --oneshot --deep |
| emerge --ask --depclean | emerge --ask --depclean | ||
| </ | </ | ||
| Ligne 203: | Ligne 293: | ||
| [[https:// | [[https:// | ||
| - | ===Mise à jour=== | + | ====Mise à jour==== |
| + | |||
| + | ===Noyau=== | ||
| + | |||
| + | Pour savoir la version du noyau de la VM, lancer : '' | ||
| + | |||
| + | Pour savoir la dernière version du noyau existant, aller dans le dépôt Github de [[https:// | ||
| + | |||
| + | Lancer la mise à jour avec '' | ||
| + | |||
| + | Arrêter '' | ||
| + | |||
| + | Relancer la machine virtuelle avec '' | ||
| + | |||
| + | Mettre à jour les entêtes conformément au paragraphe [[# | ||
| + | |||
| + | ===Paquets=== | ||
| <code bash> | <code bash> | ||
| emerge --sync | emerge --sync | ||
| - | sed -i "s/12sg/012sg/g" / | + | layman -S |
| + | sed -i "s/123szg/0123szg/g" / | ||
| eix-update | eix-update | ||
| Ligne 213: | Ligne 320: | ||
| emerge -1vuDaN --keep-going @world | emerge -1vuDaN --keep-going @world | ||
| # Update long mais plus complet et gérant mieux les conflits. | # Update long mais plus complet et gérant mieux les conflits. | ||
| - | emerge --backtrace=30 --update --deep --newuse --keep-going -va --autounmask-keep-masks --with-bdeps=y --complete-graph=y --autounmask-write --verbose-conflicts @world | + | emerge --backtrack=30 --update --deep --newuse --keep-going -va --autounmask-keep-masks --with-bdeps=y --complete-graph=y --autounmask-write --verbose-conflicts @world |
| - | emerge -va @live-rebuild | + | emerge -va --keep-going |
| emerge --oneshot --keep-going @preserved-rebuild | emerge --oneshot --keep-going @preserved-rebuild | ||
| emerge --ask --depclean | emerge --ask --depclean | ||
prog/wsl.1626038288.txt.gz · Dernière modification : de root
