我已下载并解压缩https://sqlite.org/2016/sqlite-src-3110100.zip。然后在尝试构建扩展spellfix
(在Linux上为works)时使用:
call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat"
cd sqlite-src-3110100
cl /I"src\" ext\misc\spellfix.c /link
我明白了:
cl : Command line error D8003 : missing source filename
为什么?
答案 0 :(得分:1)
你应该尝试:
cl /I <path to sqlite amalgation> <path-to-spellfix.c> /link /DLL /OUT:spellfix.dll
答案 1 :(得分:0)
我在 SQLite 的 DBeaver 和 jdbc 驱动程序中遇到了类似的问题。并希望它能帮助某人节省一些时间。
问题:
我无法加载扩展拼写修复 我在执行时收到错误“no such module spellfix1”
select * from table1 where col1 like 'asd%'
SQLite 的文档并不明显如何加载扩展,也没有构建它(这个线程帮助了我,谢谢你们,但仍然不明显,因为我很长时间没有编码)
解决方案:
SQL 错误或缺少数据库(%1 不是有效的 Win32 应用程序。) 很明显我需要 x64 构建所以我做了以下步骤:
a) 在 cmd 提示符下执行:
call "E:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64
amd64 参数是为 x64 构建设置构建环境所必需的
b) 之后我使用了 cl 命令:
cl /I "<path to sqlite amalgation folder>" "ext\misc\spellfix.c" /link /DLL /OUT:spellfix64.dll
cmd 提示符位于我从 URL 下载最新 sqlite 源代码的位置。 我是如何到达那个链接的,这也有点冒险:)
之后将我的dll放到位置并在DBeaver中执行load_extension命令
select load_extension('E:/Users/Name/Downloads/SQLite/ext/spellfix64');
我放置构建版本的路径。为了能够构建 x64 版本,我需要使用上述注释进行构建。
呃,还有一件事,您需要在连接属性上在 DBeaver 中启用加载扩展:post 是 here。