SQLite使用mingw-w64编译扩展Windows x64

问题描述

具体地说,我正在尝试编译CSV virtual table extension。尽管我使用的是mingw-w64 gcc,但我遵循了有关mingw gcc的基本说明here

它可以正常编译,但是尝试通过python 3.8 x64 sqlite3库加载它时出现此错误The specified procedure Could not be found

我已阅读this similar question,但我认为它不适用于CSV源,因为它确实具有适用于sqlite扩展的模板,并且我过去已使用mingw成功地将其构建为32位DLL。

有没有人成功使用mingw-w64来构建sqlite扩展,还是我应该在寻找另一个编译器?

解决方法

SQLite forum上提供的答案是,我的编译方式没有什么问题,而是我的加载方式没有问题:在旧版本的SQLite上,load_extension期望使用正斜杠。在dll的路径中,而不是反斜杠。

对于要使用的gcc标志也有详细的建议,因此,如果您遇到类似的问题,请查看该论坛帖子。