我需要在 Windows 中编译全文解析器插件,但即使使用原始 MySQL 源示例,我也无法对其进行打点。 MySQL 服务器版本是 5.6 x64。使用 gcc,我尝试了以下变体:
gcc -shared -Wall -g -o "plugin_example.dll" -fPIC "plugin_example.c" -DMYSQL_DYNAMIC_PLUGIN -lmysqlservices
但是当我尝试安装它时
INSTALL PLUGIN simple_parser SONAME 'plugin_example.dll'
我收到以下错误
Can't open shared library '... plugin_example.dll' (errno: 193 )
使用 Dev-C 及其(剥离的 -L 库)
gcc.exe -c projekt3.c -o projekt3.o -DMYSQL_DYNAMIC_PLUGIN -DBUILDING_DLL=1
dllwrap.exe --output-def libProjekt3.def --implib libProjekt3.a projekt3.o -static-libgcc -lmysqlservices --no-export-all-symbols --add-stdcall-alias -o Projekt3.dll
我得到了 250K DLL 并且
Can't find symbol '_mysql_plugin_interface_version_' in library
用谷歌搜索五天的试错结果毫无结果。任何帮助将不胜感激。
最佳答案
errno 193 表示文件格式错误。
您的 64 位 MySQL 和 .dll 之间可能存在不一致。 Google 的大多数页面都在讨论不兼容的 32 位和 64 位 Java 版本。
因此,我建议尝试使用 32 位 MySQL,编译 64 位插件,或者检查安装例程是否对 64 位或 32 位有一些假设?
关于mysql - 如何在 Windows 中编译 MySQL 示例插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21352080/