User:Tjmonk15/WSL Notes

From OSDev.wiki
Revision as of 23:25, 16 April 2017 by osdev>Tjmonk15 (more progress)
Jump to navigation Jump to search

Random Notes

  • 100% working on my end for Bare Bone and Meaty Skeleton
  • WSL is running Ubuntu 14.04
  • WSL does not have an install of GRUB (use grub-pc-bin)
  • WSL has a rather out of date version of GCC install by default (4.8.2)
  • To build GCC need bison, flex, byacc, as well as the prereqs mentioned on GCC_Cross-Compiler#Downloading_the_Source_Code
  • Need to update pre-built gcc, Server Fault - How do I use the latest GCC on Ubuntu? use gcc-6 instead of gcc-4.9
  • Recommended list of packages to apt-get before starting
    • git
    • bison
    • flex
    • byacc
    • build-essential
    • gcc-6 (After adding PPA: sudo add-apt-repository ppa:ubuntu-toolchain-r/test)
    • libgmp3-dev
    • libmpfr-dev
    • libmpc-dev
    • texinfo
    • grub-pc-bin
    • xorriso
  • Need to come up with steps and test all of the above to make sure it is enough.
  • Optional/Helpful packages to apt-get
    • genisoimage (provides "isoinfo" which can be helpful for sanity checking iso files)
    • nasm (if you prefer Intel syntax over AT&T)
  • Bare_Bones does work with all prereqs mentioned above. Running the kernel (with -kernel) or the iso (with -cdrom) in QEMU works (confirmed by myself +2 on the forums)
  • Meaty_Skeleton works same as the Bare Bones (works for me in qemu, maybe others, though unconfirmed by myself)
  • For cleanup purposes, [1]This is a good way to see all "installed" packages. Adding a "> file.txt" after it will allow you to easily reference and review the list to decide what needs to be removed. And "sudo apt-get autoremove" should be your final command (repeated until nothing shows up if necessary)

Step by Step

  1. Prerequisites
    1. A fully up to date Windows 10 x64 install
    2. Required Knowledge
  2. Install WSL
    1. Open Control Panel -> Program and Features -> Turn Windows features on or off
    2. Select "Windows Subsystem for Linux (Beta)"
    3. Hit OK
    4. Let it install
    5. Reboot (Yes, you MUST reboot before continuing)
  3. Installing BASH
    1. Open an elevated command prompt
    2. Run "bash" and follow the instructions/prompts provided
  4. Setup shared folder (Optional)
    1. Create a folder somewhere in your windows filesystem that you will use for easy access (I created a wsl folder in My Documents)
    2. "cd ~"
    3. "ln -s "wsl" "/mnt/c/Users/<WindowsUserName>/Documents/wsl" Replacing paths as you prefer
  5. Installing and Updating software
    1. Updating system GCC
    2. Installing/Compiling a cross compiler
    3. Install additional tools
    4. Clean Up
  6. Bare Bones