Vscode: Keep getting error ENOENT: no such file or directory, lstat 'w:\cygdrive'

Created on 13 Jan 2016  路  13Comments  路  Source: microsoft/vscode

I started getting this error when a node project is open.

Happens on a Windows 7 machine with regular node and cygwin installed.

Is there any way to debug and see what is calling the lstat command on this malformed path?

bug needs more info

Most helpful comment

Creating a symlink fixes the issue to run vscode in a cygwin (babun)
open a cmd prompt and use the following command:
mklink /j "W:\cygdrive" C:\actual\path\to\your\cygdrive

posted solution on stackoverflow : http://stackoverflow.com/questions/36508177/visual-studio-code-cannot-detect-cygwin-git-exe-path/37980938#37980938

All 13 comments

Anything in the console?

You mean in the Debug Console? Nothing there.

I keep getting the error periodically while a node project is open, not when I run the node app. So that makes me thinks this is about the linter / intellisense / etc. background workers.

I meant the VS Code developer console (from Help menu | toggle developer tools)

Yes I can see the same error there. Anyway I can see the stack trace with unminified code?

ENOENT: no such file or directory, lstat 'w:\cygdrive': Error: ENOENT: no such file or directory, lstat 'w:\cygdrive',    at Error (native)
e.doShow @ workbench.main.js:63
e.show @ workbench.main.js:63
(anonymous function) @ workbench.main.js:63
e.show @ workbench.main.js:63
(anonymous function) @ workbench.main.js:62
t @ workbench.main.js:15
__dirname.undefined.t.Class.define.done @ workbench.main.js:6
p @ workbench.main.js:6
__dirname.undefined.F.enter @ workbench.main.js:6
__dirname.undefined.t.Class.define._run @ workbench.main.js:6
__dirname.undefined.t.Class.define._chainedError @ workbench.main.js:6
__dirname.undefined.D.enter.n @ workbench.main.js:6
p @ workbench.main.js:6
__dirname.undefined.F.enter @ workbench.main.js:6
__dirname.undefined.t.Class.define._run @ workbench.main.js:6
__dirname.undefined.t.Class.define._error @ workbench.main.js:6
(anonymous function) @ workbench.main.js:15
__dirname.undefined.t.Class.define.done @ workbench.main.js:6
p @ workbench.main.js:6
__dirname.undefined.F.enter @ workbench.main.js:6
__dirname.undefined.t.Class.define._run @ workbench.main.js:6
__dirname.undefined.t.Class.define._error @ workbench.main.js:6
(anonymous function) @ workbench.main.js:15
__dirname.undefined.t.Class.define.done @ workbench.main.js:6
p @ workbench.main.js:6
__dirname.undefined.F.enter @ workbench.main.js:6
__dirname.undefined.t.Class.define._run @ workbench.main.js:6
__dirname.undefined.t.Class.define._error @ workbench.main.js:6
__dirname.undefined.t.Class.derive.join.d @ workbench.main.js:6
__dirname.undefined.t.Class.derive.join.s.forEach.q.then.a.(anonymous function) @ workbench.main.js:6
h @ workbench.main.js:5
__dirname.undefined.P.enter @ workbench.main.js:6
__dirname.undefined.t.Class.define._run @ workbench.main.js:6
__dirname.undefined.t.Class.define._completed @ workbench.main.js:6
setTimeout (async)(anonymous function) @ workbench.main.js:6
__dirname.undefined.t.Class.derive._oncancel @ workbench.main.js:6
E @ workbench.main.js:6
__dirname.undefined.t.Class.derive.timeout @ workbench.main.js:6
(anonymous function) @ workbench.main.js:15
e.queue @ workbench.main.js:15
(anonymous function) @ workbench.main.js:15
e.queue @ workbench.main.js:15
(anonymous function) @ workbench.main.js:15
(anonymous function) @ workbench.main.js:15
h @ workbench.main.js:5
__dirname.undefined.P.enter @ workbench.main.js:6
__dirname.undefined.t.Class.define._run @ workbench.main.js:6
__dirname.undefined.t.Class.define._completed @ workbench.main.js:6
(anonymous function) @ workbench.main.js:15
setTimeout (async)e.trigger @ workbench.main.js:15
t.trigger @ workbench.main.js:15
t.trigger @ workbench.main.js:15
t.triggerStatus @ workbench.main.js:62
t @ workbench.main.js:62
t @ workbench.main.js:62
m @ workbench.main.js:4
(anonymous function) @ workbench.main.js:36
e.runUnlocked @ workbench.main.js:36
e.createInstance @ workbench.main.js:36
e._ensureInstances @ workbench.main.js:36
e.registerService.Object.defineProperty.get @ workbench.main.js:36
(anonymous function) @ workbench.main.js:36
e.runUnlocked @ workbench.main.js:36
(anonymous function) @ workbench.main.js:36
e.createInstance @ workbench.main.js:36
t.createInstance @ workbench.main.js:36
e.instantiate @ workbench.main.js:37
e.setInstantiationService @ workbench.main.js:37
e.initServices @ workbench.main.js:88
e.startup @ workbench.main.js:88
e.createContents @ workbench.main.js:91
e.open @ workbench.main.js:91
(anonymous function) @ workbench.main.js:91
s @ workbench.main.js:5
processImmediate @ timers.js:374

Looks like this is caused by a malformed git.path when using cygwin's git.

Disabling git integration causes this error to disappear.

@joaomoreno fyi

Code doesn't support cygwin git. Either install Git for Windows or disable git integration.

Same problem. Is there any other solution except switching to git for windows?
The official C/C++ Extension actually supports gdb in Cygwin.

@zinechant What are the reasons for using it?

@joaomoreno All right, I will switch to git for windows. Just more accustomed to Cygwin.

Give it a try, there's been some really good progress in that project!

Creating a symlink fixes the issue to run vscode in a cygwin (babun)
open a cmd prompt and use the following command:
mklink /j "W:\cygdrive" C:\actual\path\to\your\cygdrive

posted solution on stackoverflow : http://stackoverflow.com/questions/36508177/visual-studio-code-cannot-detect-cygwin-git-exe-path/37980938#37980938

@Rigg802 It works. Thanks a lot.

Was this page helpful?
0 / 5 - 0 ratings