Open ktos opened 8 months ago
How can I solve the same problem I encountered?
the same problem +1
Looks to be an issue when building sqlite3 and onnxruntime-node, Same issue occurs for me on Apple silicon, Solution for me was to run the following ( the same approach should also work on W11 ARM as well )...
# change to plugin directory
cd ~/.vscode/extensions/continue.continue-*
# remove sqlite3 and onnxruntime libraries
npm uninstall sqlite3 onnxruntime-node
# reinstall with targetet architecture flags
npm install sqlite3 onnxruntime-node --build-from-source --target_arch=arm64 --fallback-to-build
# copy onnxruntime binaries to output folders
cp ./node_modules/libonnxruntime.1.17.3.dylib ./bin/napi-v3/darwin/arm64/libonnxruntime.1.17.3.dylib
cp ./node_modules/onnxruntime_binding.node ./bin/napi-v3/darwin/arm64/onnxruntime_binding.node
# copy sqlite binary to build output folder
cp ./node_modules/sqlite3/build/Release/node_sqlite3.node ./out/build/Release/node_sqlite3.node
Relevant stack overflow post: https://stackoverflow.com/questions/72553650/how-to-get-node-sqlite3-working-on-mac-m1
Since this is arm specific and a problem with node-pre-gyp from what I can tell, I think we should update the title of this issue, as it is not actually about windows. Maybe to: "SQLite does not install correctly on arm64 systems."
I was able to fix this by running:
npm rebuild sqlite3 --build-from-source --target_arch=arm64 --fallback-to-build
I'm not using onnx right now but I'm guessing I would have to do the same thing there.
in the extensions/vscode folder after otherwise installing the dependencies. I didn't have to copy the build output into the output folders from what I can tell? it seems that that happened when I ran the vscode debug process.
This is a manual work around I believe due to an old gyp version here as described in this SO post. so maybe we can mitigate this by upgrading node-pre-gyp? I'm not sure though
Same error for Win11 x64.
The file C:\Users\me\AppData\Roaming\JetBrains\GoLand2024.1\plugins\continue-intellij-extension\core\build\Release\node_sqlite3.node
is the arm32 version. I 'fixed' it (this error, but processing seems to hang) by copying the right binary from C:\Users\me\AppData\Roaming\JetBrains\GoLand2024.1\plugins\continue-intellij-extension\core\win32-x64
.
Now it's stuck at "Completed indexing chunks", with no errors in the core.log. Hope this might give anyone a clue or point of reference.
I'm bummed that my first experience with Continue is a bad experience. It seemed promising.
@theNailz sorry to hear about this. Luckily I think it's related to a fix I'll be making today—were you on Continue version 0.0.54?
@theNailz sorry to hear about this. Luckily I think it's related to a fix I'll be making today—were you on Continue version 0.0.54?
Yes 0.0.54
Same error for me after upgrading from W10 Jetbrains 0.0.56
to 0.0.59
. Got fixed by manually copying the correct compiled file as already explained from core\win32-x64\node_sqlite3.node
(in case of windows) to build\Release
folder.
I get the same BUG in Webstorm windows11 x64,is anyone know how to fix?
I'm also encountering this issue, on a brand new Windows 11 ARM64, using VS Code (ARM). Tried the latest release *0.8.46) as well as the latest pre-release, to no avail.
From the debug console:
Activating extension 'Continue.continue' failed: \\?\c:\Users\x\.vscode\extensions\continue.continue-0.8.46-win32-arm64\out\build\Release\node_sqlite3.node is not a valid Win32 application. \\?\c:\Users\x\.vscode\extensions\continue.continue-0.8.46-win32-arm64\out\build\Release\node_sqlite3.node.
I tried the suggestions above from https://github.com/continuedev/continue/issues/839#issuecomment-2081875150 and https://github.com/continuedev/continue/issues/839#issuecomment-2215973239 but the error message stays the same, even after disabling / enabling the extension as well as restarting VS Code.
Bump, still occurring Windows 11 ARM64 (Snapdragon Elite). After rebuilding sqlite and replacing the node file, got a new error:
mainThreadExtensionService.ts:107 Activating extension 'Continue.continue' failed: vectordb: failed to load native library. You may need to run
npm install @lancedb/vectordb-win32-arm64-msvc
.If that does not work, please file a bug report at https://github.com/lancedb/lancedb/issues
Source error: Error: Cannot find module '@lancedb/vectordb-win32-arm64-msvc' Require stack:
- c:\Users\curt_.vscode\extensions\continue.continue-0.8.49-win32-arm64\out\extension.js
- c:\Users\curt_\AppData\Local\Programs\Microsoft VS Code\resources\app\out\bootstrap-fork.js.
Same problem here with snapdragone Elite. Anyone has a solution?
I was also curios about the ARM64 Windows experience so I went and got a hold of one of the new Snapdragon Elite laptops. It's been working out great so far except for this plugin. I just started using a local ollama setup for code completion and this plugin works great for x64 on windows and the ARM M1 apple, not so much for winARM.
I know its probably a small user base right now, but man: the snapdragon elite laptops are awesome: fast, (relatively) cheap vs Apple and all day battery life, so I bet ya it will have more users soon.
Long story short, +1 request for a winARM64 build/fix please!
+1 here too Would love to use it on my ARM Windows machine.
I managed to run the VSCode extension on my Snapdragon X Elite laptop after building sqlite3
(as described higher up in this thread) and lancedb
locally with some tinkering.
I'd be happy to share binaries or walk you through the build process. Though I guess the only sustainable way forward is for the developers of these upstream packages to provide pre-built binaries for windows arm64?
sqlite3
one way forward could be switching to better-sqlite3
as proposed here.lancedb
I don't imagine it's viable to switch it out for something else, but maybe we can get them to provide binaries for windows arm64. The build was straightforward once I managed to straighten out the build dependencies, at least on an windows arm64 platform, no idea about cross-compiling.I managed to run the VSCode extension on my Snapdragon X Elite laptop after building
sqlite3
(as described higher up in this thread) andlancedb
locally with some tinkering.I'd be happy to share binaries or walk you through the build process. Though I guess the only sustainable way forward is for the developers of these upstream packages to provide pre-built binaries for windows arm64?
- For
sqlite3
one way forward could be switching tobetter-sqlite3
as proposed here.- For
lancedb
I don't imagine it's viable to switch it out for something else, but maybe we can get them to provide binaries for windows arm64. The build was straightforward once I managed to straighten out the build dependencies, at least on an windows arm64 platform, no idea about cross-compiling.
I spent half a day trying to rebuild this damn module on Windows ARM64, but nothing worked. Have you managed to get Continue working on Windows 11 ARM64? Could you share the necessary files?
I managed to run the VSCode extension on my Snapdragon X Elite laptop after building
sqlite3
(as described higher up in this thread) andlancedb
locally with some tinkering. I'd be happy to share binaries or walk you through the build process. Though I guess the only sustainable way forward is for the developers of these upstream packages to provide pre-built binaries for windows arm64?
- For
sqlite3
one way forward could be switching tobetter-sqlite3
as proposed here.- For
lancedb
I don't imagine it's viable to switch it out for something else, but maybe we can get them to provide binaries for windows arm64. The build was straightforward once I managed to straighten out the build dependencies, at least on an windows arm64 platform, no idea about cross-compiling.I spent half a day trying to rebuild this damn module on Windows ARM64, but nothing worked. Have you managed to get Continue working on Windows 11 ARM64? Could you share the necessary files?
Here you go, hope this is permitted. bundles.zip
From the continue folder (e.g. C:\Users\<name>\.vscode\extensions\continue.continue-x.y.z-win32-arm64
), you need to put node_sqlite3.node
under .\out\build\Release\
and the vectordb-win32-arm64-msvc
folder under .\out\node_modules\@lancedb\
Keep in mind that I just built this off lancedb master, so no guarantees that it will work for updated versions of continue
(or the current one, for that matter).
I'll see if I can cross-compile lancedb
for arm64 from my windows x86 machine. If that works I guess there's a chance they could integrate it in their normal builds and provide binaries.
I managed to run the VSCode extension on my Snapdragon X Elite laptop after building
sqlite3
(as described higher up in this thread) andlancedb
locally with some tinkering. I'd be happy to share binaries or walk you through the build process. Though I guess the only sustainable way forward is for the developers of these upstream packages to provide pre-built binaries for windows arm64?
- For
sqlite3
one way forward could be switching tobetter-sqlite3
as proposed here.- For
lancedb
I don't imagine it's viable to switch it out for something else, but maybe we can get them to provide binaries for windows arm64. The build was straightforward once I managed to straighten out the build dependencies, at least on an windows arm64 platform, no idea about cross-compiling.I spent half a day trying to rebuild this damn module on Windows ARM64, but nothing worked. Have you managed to get Continue working on Windows 11 ARM64? Could you share the necessary files?
Here you go, hope this is permitted. bundles.zip
From the continue folder (e.g.
C:\Users\<name>\.vscode\extensions\continue.continue-x.y.z-win32-arm64
), you need to putnode_sqlite3.node
under.\out\build\Release\
and thevectordb-win32-arm64-msvc
folder under.\out\node_modules\@lancedb\
Keep in mind that I just built this off lancedb master, so no guarantees that it will work for updated versions of
continue
(or the current one, for that matter).I'll see if I can cross-compile
lancedb
for arm64 from my windows x86 machine. If that works I guess there's a chance they could integrate it in their normal builds and provide binaries.
This worked! You saved me, I was so desperate that I installed the x64 version of VSCode in emulation mode, and of course, that's not ideal. Now I’ve disabled automatic updates and will manually check for new versions from time to time, both to test compatibility with your files and in the hope that the Continue extension developers will provide a fix. Thank you.
@svantesorberg I wanted to try Continue in my ARM64 window laptop and I couldn't. Thank you, it's working fine.
Thanks all for providing some workarounds here. I'm going to reach out to LanceDB and SQLite to see if they might be willing to include windows arm64 builds in their releases, but will also take a stab at doing the build myself soon (now that it looks finally available in GH actions! https://github.blog/news-insights/product-news/arm64-on-github-actions-powering-faster-more-efficient-build-systems/)
Before submitting your bug report
Relevant environment info
Description
After just installing the current version of continue (and pre-release, the same problem) and opening its window, the "clock" icon stays forever and nothing more happens, but I finally managed to find the appropriate VSCode log section where there is an error message:
The file "node_sqlite3.node" referenced there is actually a x86-64 DLL, not an ARM64 DLL, so I believe the problem may lay in there:
A bit related to the #724 where I asked for Win32-ARM64 support related to the esbuild - the pre-release version v0.9.8 was behaving very similarly but I couldn't pinpoint the actual error message until today.
To reproduce
No response
Log output
No response