我正在开发 MySQL v8.0 的服务器插件(以及 v5.7 的旧插件),我需要安装正确的头文件。我浏览了互联网,我所能找到的libmysqlclient-dev
只是用于客户端开发的。我需要安装服务器开发包,以便我可以包含诸如mysql/plugin_auth.h
.
这可以做到吗?
我正在开发 MySQL v8.0 的服务器插件(以及 v5.7 的旧插件),我需要安装正确的头文件。我浏览了互联网,我所能找到的libmysqlclient-dev
只是用于客户端开发的。我需要安装服务器开发包,以便我可以包含诸如mysql/plugin_auth.h
.
这可以做到吗?
Ubuntu 中的默认存储库默认不包含 MySQL 的服务器开发包,但您可以通过安装 MySQL 源代码来解决此限制。
打开终端并输入:
这将下载 MySQL 源代码。然后,您可以导航到下载 MySQL 源代码的目录,并编译服务器,该服务器将在标准包含目录中安装必要的头文件。
为了让 CMake 工作,作者还必须安装 libboost-all-dev 和 pkg-config。
cd <repo>/sql/
此外,在克隆存储库后,作者必须安装 bison 并运行bison sql_yacc.yy -o sql_yacc.cc -Hsql_yacc.hh
,bison sql_hints.yy -o sql_hints.yy.cc -Hsql_hints.yy.hh
感谢 Cardinal System 的评论。MySQL 5.7 于 2023 年 10 月终止生命。这意味着它将不再接收官方安全更新或错误修复。您可以按照如何在 Ubuntu 18.04、20.04 或更高版本上安装 MySQL 5.7中的步骤在 Ubuntu 22.04 上安装 MySQL 5.7 。
您必须使用整个服务器源代码来编译插件,而不仅仅是库和头文件。(来源)