RHEL 9中Ubuntu的libmariadb-dev替代包及头文件路径问题咨询
RHEL 9 中对应 Ubuntu libmariadb-dev 的替代包及头文件问题解决
对应替代包
RHEL 9 中与 Ubuntu 的 libmariadb-dev 对应的开发包是 mariadb-devel,可通过以下命令安装:
sudo dnf install mariadb-devel
头文件路径差异解决
Ubuntu 下 libmariadb-dev 提供的头文件路径是 <mariadb/mysql.h>,但 RHEL 9 的 mariadb-devel 仅生成 <mysql/mysql.h> 路径的头文件,有两种方案解决该问题:
方案1:修改代码中的头文件引用
直接将代码里的引入语句改为符合 RHEL 系统标准路径的写法:
#include <mysql/mysql.h>
这是最推荐的方案,符合系统默认的头文件布局规范。
方案2:创建软链接适配原有代码路径
如果不想修改代码,可以在系统头文件目录下创建软链接,模拟 Ubuntu 的路径结构:
sudo mkdir -p /usr/include/mariadb sudo ln -s /usr/include/mysql/mysql.h /usr/include/mariadb/mysql.h
执行后,原有代码中的 <mariadb/mysql.h> 引用即可正常找到头文件。
内容的提问来源于stack exchange,提问作者Tomas Lapsansky
相关产品推荐
相关产品推荐

