User:Tjmonk15/WSL Notes
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-7 (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)
[19:52] <Kazinsal> should add something about installing a Windows-based X server like Xming [19:52] <Kazinsal> you can then set up your bash startup scripts to export DISPLAY=0:0 [19:52] <Kazinsal> and then anything X or SDL inside WSL will be forwarded to Xming or whatever
Step by Step
- Prerequisites
- A fully up to date Windows 10 x64 install
- Required Knowledge
- Install WSL
- Open Control Panel -> Program and Features -> Turn Windows features on or off
- Select "Windows Subsystem for Linux (Beta)"
- Hit OK
- Let it install
- Reboot (Yes, you MUST reboot before continuing)
- Installing BASH
- Open an elevated command prompt
- Run "bash" and follow the instructions/prompts provided
- Setup shared folder (Optional)
- Create a folder somewhere in your windows filesystem that you will use for easy access (I created a wsl folder in My Documents)
- "cd ~"
- "ln -s "wsl" "/mnt/c/Users/<WindowsUserName>/Documents/wsl" Replacing paths as you prefer
- Installing and Updating software
- Updating system GCC
- Add PPA for gcc-7: sudo add-apt-repository ppa:ubuntu-toolchain-r/test
- Update apt lists so it can find gcc-7: sudo apt-get update
- Install GCC 7: sudo apt-get install gcc-7
- Point gcc to the new version: sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 --slave /usr/bin/g++ g++ /usr/bin/g++-7
- You can see here if you want to have multiple copies of gcc installed and be able to switch between them: https://askubuntu.com/questions/466651/how-do-i-use-the-latest-gcc-on-ubuntu/581497#581497
- Installing/Compiling a cross compiler
- Prereqs
- sudo apt-get install make bison flex libgmp3-dev libmpfr-dev libmpc-dev texinfo
- Follow GCC_Cross-Compiler
- Prereqs
- Install additional tools
- sudo apt-get install git grub-pc-bin xorriso
- Optional: sudo apt-get install nasm genisoimage
- Clean Up
- sudo apt-get autoremove
- Repeat til nothing shows up
- sudo apt-get autoremove
- Updating system GCC
- Bare Bones
- See Bare_Bones
ToDo
- Finish Step-by-Step
- Test Step-by-Step + clean-up
- Remove specific version numbers and add instructions to find "current" versions
- Test again
- Seperate instructions and add to appropriate Wiki Pages