Got this issue: Impossible to load parser for html: Failed to load
parser: uv_dlopen: error: 127 · Issue #3587 ·
nvim-treesitter/nvim-treesitter · GitHub
parser: uv_dlopen: error: 127 · Issue #3587 ·
nvim-treesitter/nvim-treesitter · GitHub
There's an issue with HTML and YAML parsers due to their dependence on C++ and the libstdc++-6.dll
library. Specifically, the NeoVim Windows version includes this library for nvim-qt.exe
. However, this can cause conflicts when compiling with the user installed GCC, which links to its own libstdc++-6.dll
(which in most case will be a different verson).
Potential Problems:
- DLL Conflict: If you're not using
nvim-qt
, thehtml.so
andyaml.so
files might mistakenly point to the library bundled with NeoVim, leading to unexpected behavior. - Path Reliance: Depending on your path variables, the parsers might prioritize NeoVim's library, even if you intend to use GCC's version.
Fake Solutions:
- Remove NeoVim's Library (if not using nvim-qt): If you don't use
nvim-qt
, simply delete thelibstdc++-6.dll
file included with NeoVim to avoid conflicts.
No, you don't want this, as it breaks your nvim-qt totally. - Adjust Path Variables: Ensure your path variables prioritize the
libstdc++-6.dll
that comes with GCC. This involves checking your environment variables and making necessary adjustments.
No, I bet you can't make it work, or you will break your nvim-qt just as you delete its libstdc++-6.dll.
Real Solution:
- Replace MinGW with Clang: Using Clang as your compiler avoids this issue because its C++ standard library (libc++) is separate from the one bundled with NeoVim (libstdc++). This eliminates potential conflicts and simplifies the setup.
评论
发表评论