Reputation: 402
I am using VS Code on Windows 10 with the Windows Linux Subsystem & Ubuntu 18.04.
What I am attempting to do is use VS Code as a python development environment with bash as its terminal and the python3 interpreter installed on the Ubuntu system as its default python executable.
In my User configuration I have:
"terminal.integrated.shell.windows": "C:\\Windows\\System32\\bash.exe"
set, and under Ubuntu python3 is installed and python
is an alias to it.
When I attempt to execute a python file I get the following error:
/usr/bin/python3: can't open file 'c:/Users/R ... /test.py': [Errno 2] No such file or directory
My sense is I need to get VS Code passing the path relative to the Linux Subsystem rather than to Windows C:\ to the interpreter. How can I do this?
Upvotes: 5
Views: 18547
Reputation: 3378
Try to install the extension Remote Development extension pack, maybe can fix your problem. Because it will simulate like the vscode is running in the WSl.
https://code.visualstudio.com/docs/remote/wsl#_installation
Upvotes: 0
Reputation: 402
While there does not appear to be official support in Visual Studio Code for Windows, the plugin "Code Runner" with the runInTerminal setting fixes this problem.
It adds a "Run Code" (Alt-Ctrl-N) to the right-click window of an open editor.
If you set the User setting:
"code-runner.runInTerminal": true
And then run the code, it passes the correct filename to the default executable for your terminal environment.
Upvotes: 3
Reputation: 15990
WSL is not officially supported by the Python extension yet. See this issue to track the status for adding support.
Upvotes: 2
Reputation: 849
Linux is case-sensitive, Windows is not. You have "c:" and "C:" in your script. Maybe check for any other discrepancies you might have?
Upvotes: 2