This minimal install is only a 3GB, depending on your download speed installation should not take more than 10 minutes. Once that is done you are ready to go on Windows. Configuring your Linux machine for cross platform C development. Visual Studio does not have a requirement for a specific distribution of Linux; use any you would like to. Select Search automatically for updated driver software. Select Update Driver. If Windows doesn't find a new driver, you can try looking for one on the device manufacturer's website and follow their instructions. Reinstall the device driver. In the search box on the taskbar, enter device manager, then select Device Manager. What You Need to Know About Windows 10’s Bash Shell. RELATED: Everything You Can Do With Windows 10's New Bash Shell. This isn’t a virtual machine, a container, or Linux software compiled for Windows (like Cygwin). Instead, Windows 10 offers a full Windows Subsystem intended for Linux for running Linux software.
There are two options available for installing Windows Subsystem for Linux (WSL):
Simplified install(preview release):
wsl --install
The
wsl --install
simplified install command requires that you join the Windows Insiders Program and install a preview build of Windows 10 (OS build 20262 or higher), but eliminates the need to follow the manual install steps. All you need to do is open a command window with administrator privileges and runwsl --install
, after a restart you will be ready to use WSL.Manual install: Follow the six steps listed below.
The manual install steps for WSL are listed below and can be used to install Linux on any version of Windows 10.
Simplified Installation for Windows Insiders
The installation process for Windows Subsystem for Linux has been significantly improved in the latest Windows Insiders preview builds of Windows 10, replacing the manual steps below with a single command.
In order to use the wsl --install
simplified install command, you must:
- Join the Windows Insiders Program
- Install a preview build of Windows 10 (OS build 20262 or higher).
- Open a command line windows with Administrator privileges
Once those requirements are met, to install WSL:
- Enter this command in the command line you've opened in Admin mode:
wsl.exe --install
- Restart your machine
The first time you launch a newly installed Linux distribution, a console window will open and you'll be asked to wait for files to de-compress and be stored on your PC. All future launches should take less than a second.
You will then need to create a user account and password for your new Linux distribution.
CONGRATULATIONS! You've successfully installed and set up a Linux distribution that is completely integrated with your Windows operating system!
The --install command performs the following actions:
- Enables the optional WSL and Virtual Machine Platform components
- Downloads and installs the latest Linux kernel
- Sets WSL 2 as the default
- Downloads and installs a Linux distribution (reboot may be required)
By default, the installed Linux distribution will be Ubuntu. This can be changed using wsl --install -d <Distribution Name>
. (Replacing <Distribution Name>
with the name of your desired distribution.) Additional Linux distributions may be added to your machine after the initial install using the wsl --install -d <Distribution Name>
command.
To see a list of available Linux distributions, enter wsl --list --online
.
Manual Installation Steps
If you are not on a Windows Insiders build, the features required for WSL will need to be enabled manually following the steps below.
Step 1 - Enable the Windows Subsystem for Linux
You must first enable the 'Windows Subsystem for Linux' optional feature before installing any Linux distributions on Windows.
Open PowerShell as Administrator and run:
We recommend now moving on to step #2, updating to WSL 2, but if you wish to only install WSL 1, you can now restart your machine and move on to Step 6 - Install your Linux distribution of choice. To update to WSL 2, wait to restart your machine and move on to the next step.
Step 2 - Check requirements for running WSL 2
To update to WSL 2, you must be running Windows 10.
- For x64 systems: Version 1903 or higher, with Build 18362 or higher.
- For ARM64 systems: Version 2004 or higher, with Build 19041 or higher.
- Builds lower than 18362 do not support WSL 2. Use the Windows Update Assistant to update your version of Windows.
To check your version and build number, select Windows logo key + R, type winver, select OK. (Or enter the ver
command in Windows Command Prompt). Update to the latest Windows version in the Settings menu.
Note
If you are running Windows 10 version 1903 or 1909, open 'Settings' from your Windows menu, navigate to 'Update & Security' and select 'Check for Updates'. Your Build number must be 18362.1049+ or 18363.1049+, with the minor build # over .1049. Read more: WSL 2 Support is coming to Windows 10 Versions 1903 and 1909. See the troubleshooting instructions.
Step 3 - Enable Virtual Machine feature
Before installing WSL 2, you must enable the Virtual Machine Platform optional feature. Your machine will require virtualization capabilities to use this feature.
Linux Developer Community Others Driver Download For Windows 10 Pro
Open PowerShell as Administrator and run:
Restart your machine to complete the WSL install and update to WSL 2.
Step 4 - Download the Linux kernel update package
Download the latest package:
Note
If you're using an ARM64 machine, please download the ARM64 package instead. If you're not sure what kind of machine you have, open Command Prompt or PowerShell and enter:
systeminfo | find 'System Type'
.Run the update package downloaded in the previous step. (Double-click to run - you will be prompted for elevated permissions, select ‘yes’ to approve this installation.)
Once the installation is complete, move on to the next step - setting WSL 2 as your default version when installing new Linux distributions. (Skip this step if you want your new Linux installs to be set to WSL 1).
Note
For more information, read the article changes to updating the WSL2 Linux kernel, available on the Windows Command Line Blog.
Step 5 - Set WSL 2 as your default version
Open PowerShell and run this command to set WSL 2 as the default version when installing a new Linux distribution:
Step 6 - Install your Linux distribution of choice
Open the Microsoft Store and select your favorite Linux distribution.
The following links will open the Microsoft store page for each distribution:
From the distribution's page, select 'Get'.
The first time you launch a newly installed Linux distribution, a console window will open and you'll be asked to wait for a minute or two for files to de-compress and be stored on your PC. All future launches should take less than a second.
Linux Developer Community Others Driver Download For Windows 10 64-bit
You will then need to create a user account and password for your new Linux distribution.
CONGRATULATIONS! You've successfully installed and set up a Linux distribution that is completely integrated with your Windows operating system!
Install Windows Terminal (optional)
Windows Terminal enables multiple tabs (quickly switch between multiple Linux command lines, Windows Command Prompt, PowerShell, Azure CLI, etc), create custom key bindings (shortcut keys for opening or closing tabs, copy+paste, etc.), use the search feature, and custom themes (color schemes, font styles and sizes, background image/blur/transparency). Learn more.
Install Windows Terminal.
Set your distribution version to WSL 1 or WSL 2
You can check the WSL version assigned to each of the Linux distributions you have installed by opening the PowerShell command line and entering the command (only available in Windows Build 18362 or higher): wsl -l -v
To set a distribution to be backed by either version of WSL please run:
Make sure to replace <distribution name>
with the actual name of your distribution and <versionNumber>
with the number '1' or '2'. You can change back to WSL 1 at anytime by running the same command as above but replacing the '2' with a '1'.
Note
The update from WSL 1 to WSL 2 may take several minutes to complete depending on the size of your targeted distribution. If you are running an older (legacy) installation of WSL 1 from Windows 10 Anniversary Update or Creators Update, you may encounter an update error. Follow these instructions to uninstall and remove any legacy distributions.
If wsl --set-default-version
results as an invalid command, enter wsl --help
. If the --set-default-version
is not listed, it means that your OS doesn't support it and you need to update to version 1903, Build 18362 or higher.
If you see this message after running the command: WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel
. You still need to install the MSI Linux kernel update package.
Additionally, if you want to make WSL 2 your default architecture you can do so with this command:
This will set the version of any new distribution installed to WSL 2.
Troubleshooting installation
Below are related errors and suggested fixes. Refer to the WSL troubleshooting page for other common errors and their solutions.
Installation failed with error 0x80070003
- The Windows Subsystem for Linux only runs on your system drive (usually this is your
C:
drive). Make sure that distributions are stored on your system drive: - Open Settings -> **System --> Storage -> More Storage Settings: Change where new content is saved
- The Windows Subsystem for Linux only runs on your system drive (usually this is your
WslRegisterDistribution failed with error 0x8007019e
- The Windows Subsystem for Linux optional component is not enabled:
- Open Control Panel -> Programs and Features -> Turn Windows Feature on or off -> Check Windows Subsystem for Linux or using the PowerShell cmdlet mentioned at the beginning of this article.
Installation failed with error 0x80070003 or error 0x80370102
- Please make sure that virtualization is enabled inside of your computer's BIOS. The instructions on how to do this will vary from computer to computer, and will most likely be under CPU related options.
Error when trying to upgrade:
Invalid command line option: wsl --set-version Ubuntu 2
- Enure that you have the Windows Subsystem for Linux enabled, and that you're using Windows Build version 18362 or higher. To enable WSL run this command in a PowerShell prompt with admin privileges:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
.
- Enure that you have the Windows Subsystem for Linux enabled, and that you're using Windows Build version 18362 or higher. To enable WSL run this command in a PowerShell prompt with admin privileges:
The requested operation could not be completed due to a virtual disk system limitation. Virtual hard disk files must be uncompressed and unencrypted and must not be sparse.
- Deselect “Compress contents” (as well as “Encrypt contents” if that’s checked) by opening the profile folder for your Linux distribution. It should be located in a folder on your Windows file system, something like:
USERPROFILE%AppDataLocalPackagesCanonicalGroupLimited...
- In this Linux distro profile, there should be a LocalState folder. Right-click this folder to display a menu of options. Select Properties > Advanced and then ensure that the “Compress contents to save disk space” and “Encrypt contents to secure data” checkboxes are unselected (not checked). If you are asked whether to apply this to just to the current folder or to all subfolders and files, select “just this folder” because you are only clearing the compress flag. After this, the
wsl --set-version
command should work.
- Deselect “Compress contents” (as well as “Encrypt contents” if that’s checked) by opening the profile folder for your Linux distribution. It should be located in a folder on your Windows file system, something like:
Note
Linux Developer Community Others Driver Download For Windows 10 32-bit
In my case, the LocalState folder for my Ubuntu 18.04 distribution was located at C:Users<my-user-name>AppDataLocalPackagesCanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc
Check WSL Docs GitHub thread #4103 where this issue is being tracked for updated information.
The term 'wsl' is not recognized as the name of a cmdlet, function, script file, or operable program.
- Ensure that the Windows Subsystem for Linux Optional Component is installed. Additionally, if you are using an ARM64 device and running this command from PowerShell, you will receive this error. Instead run
wsl.exe
from PowerShell Core, or Command Prompt.
- Ensure that the Windows Subsystem for Linux Optional Component is installed. Additionally, if you are using an ARM64 device and running this command from PowerShell, you will receive this error. Instead run
Error: This update only applies to machines with the Windows Subsystem for Linux.
- To install the Linux kernel update MSI package, WSL is required and should be enabled first. If it fails, it you will see the message:
This update only applies to machines with the Windows Subsystem for Linux
. - There are three possible reason you see this message:
You are still in old version of Windows which doesn't support WSL 2. See step #2 for version requirements and links to update.
WSL is not enabled. You will need to return to step #1 and ensure that the optional WSL feature is enabled on your machine.
After you enabled WSL, a reboot is required for it to take effect, reboot your machine and try again.
- To install the Linux kernel update MSI package, WSL is required and should be enabled first. If it fails, it you will see the message:
Error: WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel .
- If the Linux kernel package is missing in the %SystemRoot%system32lxsstools folder, you will encounter this error. Resolve it by installing the Linux kernel update MSI package in step #4 of these installation instructions. You may need to uninstall the MSI from 'Add or Remove Programs', and install it again.
Download Quick Links [ Windows ] [ Linux ] [ MacOS ]
A more recent release is available see the CUDA Toolkit and GPU Computing SDK home page
For older releases, see theCUDA Toolkit Release Archive
Release Highlights
- Support for the new Fermi architecture, with:
- Native 64-bit GPU support
- Multiple Copy Engine support
- ECC reporting
- Concurrent Kernel Execution
- Fermi HW debugging support in cuda-gdb
- Fermi HW profiling support for CUDA C and OpenCL in Visual Profiler
- C++ Class Inheritance and Template Inheritance support for increased programmer productivity
- A new unified interoperability API for Direct3D and OpenGL, with support for:
- OpenGL texture interop
- Direct3D 11 interop support
- CUDA Driver / Runtime Buffer Interoperability, which allows applications using the CUDA Driver API to also use libraries implemented using the CUDA C Runtime such as CUFFT and CUBLAS.
- CUBLAS now supports all BLAS1, 2, and 3 routines including those for single and double precision complex numbers
- Up to 100x performance improvement while debugging applications with cuda-gdb
- cuda-gdb hardware debugging support for applications that use the CUDA Driver API
- cuda-gdb support for JIT-compiled kernels
- New CUDA Memory Checker reports misalignment and out of bounds errors, available as a stand-alone utility and debugging mode within cuda-gdb
- CUDA Toolkit libraries are now versioned, enabling applications to require a specific version, support multiple versions explicitly, etc.
- CUDA C/C++ kernels are now compiled to standard ELF format
- Support for device emulation mode has been packaged in a separate version of the CUDA C Runtime (CUDART), and is deprecated in this release. Now that more sophisticated hardware debugging tools are available and more are on the way, NVIDIA will be focusing on supporting these tools instead of the legacy device emulation functionality.
- On Windows, use the new Parallel Nsight development environment for Visual Studio, with integrated GPU debugging and profiling tools (was code-named 'Nexus'). Please seewww.nvidia.com/nsightfor details.
- On Linux, use cuda-gdb and cuda-memcheck, and check out the solutions from Allinea and TotalView that will be available soon.
- Support for all the OpenCL features in the latest R195 production driver package:
- Double Precision
- Graphics Interoperability with OpenCL, Direc3D9, Direct3D10, and Direct3D11 for high performance visualization
- Query for Compute Capability, so you can target optimizations for GPU architectures (cl_nv_device_attribute_query)
- Ability to control compiler optimization settings via support for pragma unroll in OpenCL kernels and an extension that allows programmers to set compiler flags. (cl_nv_compiler_options)
- OpenCL Images support, for better/faster image filtering
- 32-bit global and local atomics for fast, convenient data manipulation
- Byte Addressable Stores, for faster video/image processing and compression algorithms
- Support for the latest OpenCL spec revision 1.0.48 and latest official Khronos OpenCL headers as of 2010-02-17
Note: The developer driver packages below provide baseline support for the widest number of NVIDIA products in the smallest number of installers. More recent production driver packages for developers and end users may be available atwww.nvidia.com/drivers.
For additional tools and solutions for Windows, Linux and MAC OS , such as CUDA Fortran, CULA, CUDA-dgb , please visit our Tools and Ecosystem Page
Download Quick Links [ Windows ] [ Linux ] [ MacOS ]
Windows XP, Windows VISTA, Windows 7
Description of Download | Link to Binaries | Documents |
Developer Drivers for WinXP (197.13) | 32-bit 64-bit | |
Developer Drivers for WinVista & Win7 (197.13) | 32-bit 64-bit | |
Notebook Developer Drivers for WinXP | 32-bit 64-bit | |
Notebook Developer Drivers for WinVista & Win7 | 32-bit 64-bit | |
CUDA Toolkit
| 32-bit 64-bit | Getting Started Guide for Windows Release Notes CUDA C Programming Guide CUDA C Best Best Practices Guide OpenCL Programming Guide OpenCL Best Best Practices Guide OpenCL Implementation Notes CUDA Reference Manual API Reference PTX ISA 2.0 Visual Profiler User Guide Visual Profiler Release Notes Fermi Compatibility Guide Fermi Tuning Guide CUBLAS User Guide CUFFT User Guide License |
NVIDIA Performance Primitives (NPP) library | 32-bit 64-bit | |
GPU Computing SDK code samples | 32-bit 64-bit | Release Notes for CUDA C Release Notes for DirectCompute Release Notes for OpenCL CUDA Occupancy Calculator License |
NVIDIA OpenCL Extensions | Compiler_Options D3D9 Sharing D3D10 Sharing D3D11 Sharing Device Attribute Query Pragma Unroll |
Linux
Description of Download | Link to Binaries | Documents |
Developer Drivers for Linux (195.36.15) | 32-bit 64-bit | |
CUDA Toolkit
| Getting Started Guide for Linux Release Notes for Linux CUDA C Programming Guide CUDA C Best Best Practices Guide OpenCL Programming Guide OpenCL Best Best Practices Guide OpenCL Implementation Notes CUDA Reference Manual API Reference PTX ISA 2.0 CUDA-GDB User Manual Visual Profiler User Guide Visual Profiler Release Notes Fermi Compatibility Guide Fermi Tuning Guide CUBLAS User Guide CUFFT User Guide License | |
CUDA Toolkit for Fedora 10 | 32-bit 64-bit | |
CUDA Toolkit for RedHat Enterprise Linux 5.3 | 32-bit 64-bit | |
CUDA Toolkit for Ubuntu Linux 9.04 | 32-bit 64-bit | |
CUDA Toolkit for RedHat Enterprise Linux 4.8 | 32-bit 64-bit | |
CUDA Toolkit for OpenSUSE 11.1 | 32-bit 64-bit | |
CUDA Toolkit for SUSE Linux Enterprise Desktop 11 | 32-bit 64-bit | |
NVIDIA Performance Primitives (NPP) library | 32-bit 64-bit | |
GPU Computing SDK code samples | download | Release Notes for CUDA C Release Notes for OpenCL CUDA Occupancy Calculator License |
NVIDIA OpenCL Extensions | Compiler_Options D3D9 Sharing D3D10 Sharing D3D11 Sharing Device Attribute Query Pragma Unroll |
Linux Developer Community Others Driver Download For Windows 10 Bit
MacOS
Description of Download | Link to Binaries | Documents |
Developer Drivers for MacOS | download | |
CUDA Toolkit
| download | Getting Started Guide for Mac |
NVIDIA Performance Primitives (NPP) library | download | |
GPU Computing SDK code samples | download | Release Notes for CUDA C Release Notes for OpenCL CUDA Occupancy Calculator License |