首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL 8.4源码编译安装(二)

MySQL 8.4源码编译安装(二)

原创
作者头像
用户11823619
修改2025-09-05 17:39:00
修改2025-09-05 17:39:00
1600
代码可运行
举报
运行总次数:0
代码可运行
2.4.2.4.6 openEuler 22.03/24.03 LTS

进入mysql包解压的目录:

代码语言:javascript
代码运行次数:0
运行
复制
cd mysql-8.4.5/

安装cmake包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y cmake

执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
cmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning:  No source or binary directory provided.  Both will be assumed to be the  same as the current working directory, but note that this warning will  become a fatal error in future CMake releases.-- Running cmake version 3.27.9-- Could NOT find Git (missing: GIT_EXECUTABLE)-- CMAKE_MODULE_PATH is /usr/local/src/mysql-8.4.5/cmake-- MySQL 8.4.5CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles".  CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool. # 提示,CMake 错误:CMake 找不到与“Unix Makefiles”对应的构建程序。CMAKE_MAKE_PROGRAM 未设置。您可能需要选择其他构建工具。需要安装make。CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage # 提示,CMake 错误:EnableLanguage 后未设置 CMAKE_C_COMPILER,需要安装gcc。CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage # 提示,CMake 错误:在 EnableLanguage 之后未设置 CMAKE_CXX_COMPILER,需要安装gcc-c++。-- Configuring incomplete, errors occurred!

安装make、gcc和gcc-c++包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y make gcc gcc-c++

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/ssl.cmake:85 (MESSAGE):  Please install the appropriate openssl developer package. # 提示,请安装相应的 openssl 开发人员软件包。Call Stack (most recent call first):  cmake/ssl.cmake:370 (FATAL_SSL_NOT_FOUND_ERROR)  cmake/ssl.cmake:551 (FIND_SYSTEM_OPENSSL)  CMakeLists.txt:1859 (MYSQL_CHECK_SSL)-- Configuring incomplete, errors occurred!

安装openssl-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y openssl-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/readline.cmake:93 (MESSAGE):  Curses library not found.  Please install appropriate package,      remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel. # 提示,找不到 Curses 库。请安装合适的软件包,删除 CMakeCache.txt 并重新运行 cmake。在 Debian/Ubuntu 上,包名称是 libncurses5-dev,在 Redhat 及其衍生产品上是 ncurses-devel。Call Stack (most recent call first):  cmake/readline.cmake:127 (FIND_CURSES)  cmake/readline.cmake:221 (MYSQL_USE_BUNDLED_EDITLINE)  CMakeLists.txt:1966 (MYSQL_CHECK_EDITLINE)-- Configuring incomplete, errors occurred!

安装ncurses-devel:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y ncurses-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:41 (MESSAGE):  Cannot find RPC development libraries.  You need to install the required  packages: # 提示,找不到 RPC 开发库。您需要安装所需的包:    Debian/Ubuntu:              apt install libtirpc-dev    RedHat/Fedora/Oracle Linux: yum install libtirpc-devel    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  cmake/rpc.cmake:107 (WARN_MISSING_SYSTEM_TIRPC)  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)CMake Error at cmake/rpc.cmake:108 (MESSAGE):  Could not find rpc/rpc.h in /usr/include or /usr/include/tirpcCall Stack (most recent call first):  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)-- Configuring incomplete, errors occurred!

安装libtirpc-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y libtirpc-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:30 (MESSAGE):  Cannot find rpcgen executable.  You need to install the required packages: # 提示,找不到 rpcgen 可执行文件。您需要安装所需的软件包:    Debian/Ubuntu:              apt install rpcsvc-proto    RedHat/Fedora/Oracle Linux: yum install rpcgen    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:123 (WARN_MISSING_RPCGEN_EXECUTABLE)  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)CMake Error at plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:124 (MESSAGE):  Could not find rpcgenCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)-- Configuring incomplete, errors occurred!

安装rpcgen包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y rpcgen

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...-- Configuring done (1.8s)-- Generating done (3.4s)-- Build files have been written to: /usr/local/src/mysql-8.4.5

执行make:

代码语言:javascript
代码运行次数:0
运行
复制
make -j $(nproc) && make install

总结编译过程:

代码语言:javascript
代码运行次数:0
运行
复制
# 安装依赖包yum install -y cmake make gcc gcc-c++ openssl-devel ncurses-devel libtirpc-devel rpcgen# 进入mysql包解压的目录cd mysql-8.4.5/# 执行cmakecmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1# 执行makemake -j $(nproc) && make install
2.4.2.4.7 AnolisOS 23

进入mysql包解压的目录:

代码语言:javascript
代码运行次数:0
运行
复制
cd mysql-8.4.5/

安装cmake包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y cmake

执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
cmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning:  No source or binary directory provided.  Both will be assumed to be the  same as the current working directory, but note that this warning will  become a fatal error in future CMake releases.-- Running cmake version 3.30.5-- Could NOT find Git (missing: GIT_EXECUTABLE) Hint: The project() command has not yet been called.  It sets up system-specific search paths.-- This is .el10. as found from 'rpm -qf /'-- CMAKE_MODULE_PATH is /usr/local/src/mysql-8.4.5/cmake-- MySQL 8.4.5-- The C compiler identification is unknown-- The CXX compiler identification is unknownCMake Error at CMakeLists.txt:514 (PROJECT):  No CMAKE_C_COMPILER could be found.  Tell CMake where to find the compiler by setting either the environment  variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to  the compiler, or to the compiler name if it is in the PATH.  # 提示,通过设置环境变量 “CC” 或 CMake 缓存条目CMAKE_C_COMPILER到编译器,或者如果编译器名称在 PATH,需要安装gcc。CMake Error at CMakeLists.txt:514 (PROJECT):  No CMAKE_CXX_COMPILER could be found.  Tell CMake where to find the compiler by setting either the environment  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path  to the compiler, or to the compiler name if it is in the PATH. # 通过设置环境变量 “CXX” 或 CMake 缓存条目CMAKE_CXX_COMPILER完整路径添加到编译器,或者添加到编译器名称(如果它在 PATH 中),需要安装gcc-c++。-- Configuring incomplete, errors occurred!

安装gcc和gcc-c++包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y gcc gcc-c++

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...-- Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR) -- Could not find system OpenSSLMake sure you have specified a supported SSL version. Valid options are : openssl[0-9]+ (use alternative system library)yes (synonym for system)</path/to/custom/openssl/installation>CMake Error at cmake/ssl.cmake:85 (MESSAGE):  Please install the appropriate openssl developer package. # 提示,请安装相应的 openssl 开发人员软件包。Call Stack (most recent call first):  cmake/ssl.cmake:370 (FATAL_SSL_NOT_FOUND_ERROR)  cmake/ssl.cmake:551 (FIND_SYSTEM_OPENSSL)  CMakeLists.txt:1859 (MYSQL_CHECK_SSL)-- Configuring incomplete, errors occurred!

安装openssl-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y openssl-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH) CMake Error at cmake/readline.cmake:93 (MESSAGE):  Curses library not found.  Please install appropriate package,      remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel. # 提示,找不到 Curses 库。请安装合适的软件包,删除 CMakeCache.txt 并重新运行 cmake。在 Debian/Ubuntu 上,包名称是 libncurses5-dev,在 Redhat 及其衍生产品上是 ncurses-devel。Call Stack (most recent call first):  cmake/readline.cmake:127 (FIND_CURSES)  cmake/readline.cmake:221 (MYSQL_USE_BUNDLED_EDITLINE)  CMakeLists.txt:1966 (MYSQL_CHECK_EDITLINE)-- Configuring incomplete, errors occurred!

安装ncurses-devel:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y ncurses-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...--   Package 'libtirpc', required by 'virtual:world', not foundCMake Warning at cmake/rpc.cmake:41 (MESSAGE):  Cannot find RPC development libraries.  You need to install the required  packages: # 提示,找不到 RPC 开发库。您需要安装所需的包:    Debian/Ubuntu:              apt install libtirpc-dev    RedHat/Fedora/Oracle Linux: yum install libtirpc-devel    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  cmake/rpc.cmake:107 (WARN_MISSING_SYSTEM_TIRPC)  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)CMake Error at cmake/rpc.cmake:108 (MESSAGE):  Could not find rpc/rpc.h in /usr/include or /usr/include/tirpcCall Stack (most recent call first):  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)-- Configuring incomplete, errors occurred!

安装libtirpc-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y libtirpc-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:30 (MESSAGE):  Cannot find rpcgen executable.  You need to install the required packages: # 提示,找不到 rpcgen 可执行文件。您需要安装所需的软件包:    Debian/Ubuntu:              apt install rpcsvc-proto    RedHat/Fedora/Oracle Linux: yum install rpcgen    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:123 (WARN_MISSING_RPCGEN_EXECUTABLE)  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)CMake Error at plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:124 (MESSAGE):  Could not find rpcgenCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)-- Configuring incomplete, errors occurred!

安装rpcgen包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y rpcgen

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...-- Configuring done (35.3s)-- Generating done (5.5s)-- Build files have been written to: /usr/local/src/mysql-8.4.5

执行make:

代码语言:javascript
代码运行次数:0
运行
复制
make -j $(nproc) && make install

总结编译过程:

代码语言:javascript
代码运行次数:0
运行
复制
# 安装依赖包yum install -y cmake gcc gcc-c++ openssl-devel ncurses-devel libtirpc-devel rpcgen# 进入mysql包解压的目录cd mysql-8.4.5/# 执行cmakecmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1# 执行makemake -j $(nproc) && make install

2.4.2.4.8 AnolisOS 8和OpenCloudOS 8

进入mysql包解压的目录:

代码语言:javascript
代码运行次数:0
运行
复制
cd mysql-8.4.5/

安装cmake包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y cmake

执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
cmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning:  No source or binary directory provided.  Both will be assumed to be the  same as the current working directory, but note that this warning will  become a fatal error in future CMake releases.-- Running cmake version 3.26.5-- Could NOT find Git (missing: GIT_EXECUTABLE) -- CMAKE_MODULE_PATH is /usr/local/src/mysql-8.4.5/cmake-- MySQL 8.4.5CMake Error at CMakeLists.txt:514 (PROJECT):  The CMAKE_C_COMPILER:    /usr/bin/cc  is not a full path to an existing compiler tool.  Tell CMake where to find the compiler by setting either the environment  variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to  the compiler, or to the compiler name if it is in the PATH. # 提示,通过设置环境变量 “CC” 或 CMake 缓存条目CMAKE_C_COMPILER到编译器,或者如果编译器名称在 PATH。CMake Error at CMakeLists.txt:514 (PROJECT):  The CMAKE_CXX_COMPILER:    /usr/bin/c++  is not a full path to an existing compiler tool.  Tell CMake where to find the compiler by setting either the environment  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path  to the compiler, or to the compiler name if it is in the PATH. # 通过设置环境变量 “CXX” 或 CMake 缓存条目CMAKE_CXX_COMPILER完整路径添加到编译器,或者添加到编译器名称(如果它在 PATH 中)。-- Configuring incomplete, errors occurred!

安装gcc和gcc-c++包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y gcc gcc-c++

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at CMakeLists.txt:566 (MESSAGE):  This is an in-source build-- CMAKE_GENERATOR: Unix MakefilesCMake Error at cmake/os/Linux.cmake:73 (MESSAGE):  GCC 10 or newer is required # 提示,需要 GCC 10 或更高版本Call Stack (most recent call first):  CMakeLists.txt:667 (INCLUDE)-- Configuring incomplete, errors occurred!

编译安装gcc:

代码语言:javascript
代码运行次数:0
运行
复制
[root@anolis8 mysql-8.4.5]# gcc --versiongcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-24.0.1) # 可以看到gcc版本是8.5.0Copyright (C) 2018 Free Software Foundation, Inc.This is free software; see the sourcefor copying conditions.  There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.[root@opencloudos8 mysql-8.4.5]# gcc --versiongcc (GCC) 8.5.0 20210514 (Tencent 8.5.0-26)Copyright (C) 2018 Free Software Foundation, Inc.This is free software; see the sourcefor copying conditions.  There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.cd ..# 注意:这里需要编译安装gcc 11,不要装gcc 10,装了gcc 10在登录mysql之后就退出了,报错“Segmentation fault”。wget https://mirrors.cloud.tencent.com/gnu/gcc/gcc-11.5.0/gcc-11.5.0.tar.gztar xf gcc-11.5.0.tar.gzcd gcc-11.5.0# 安装gcc依赖包yum install -y bzip2# 下载gcc依赖包./contrib/download_prerequisites2025-05-06 23:17:03 URL:http://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2 [2383840/2383840] -> "gmp-6.1.0.tar.bz2" [1]2025-05-06 23:17:08 URL:http://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.6.tar.bz2 [1287202/1287202] -> "mpfr-3.1.6.tar.bz2" [1]2025-05-06 23:17:11 URL:http://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz [669925/669925] -> "mpc-1.0.3.tar.gz" [1]2025-05-06 23:17:22 URL:http://gcc.gnu.org/pub/gcc/infrastructure/isl-0.18.tar.bz2 [1658291/1658291] -> "isl-0.18.tar.bz2" [1]gmp-6.1.0.tar.bz2: OKmpfr-3.1.6.tar.bz2: OKmpc-1.0.3.tar.gz: OKisl-0.18.tar.bz2: OKAll prerequisites downloaded successfully.mkdir buildcd build/# 执行configure../configure --prefix=/usr --disable-multilib ...configure: creating ./config.statusconfig.status: creating Makefile# 执行makemake -j 4 && make install...make[4]: Nothing to be donefor'install-data-am'.make[4]: Leaving directory '/usr/local/src/gcc-11.5.0/build/x86_64-pc-linux-gnu/libatomic'make[3]: Leaving directory '/usr/local/src/gcc-11.5.0/build/x86_64-pc-linux-gnu/libatomic'make[2]: Leaving directory '/usr/local/src/gcc-11.5.0/build/x86_64-pc-linux-gnu/libatomic'make[1]: Leaving directory '/usr/local/src/gcc-11.5.0/build'[root@anolis8 build]# gcc --versiongcc (GCC) 11.5.0Copyright (C) 2021 Free Software Foundation, Inc.This is free software; see the sourcefor copying conditions.  There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

再次进入mysql包解压的目录:

代码语言:javascript
代码运行次数:0
运行
复制
cd ../../mysql-8.4.5/

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/ssl.cmake:85 (MESSAGE):  Please install the appropriate openssl developer package. # 提示,请安装相应的 openssl 开发人员软件包。Call Stack (most recent call first):  cmake/ssl.cmake:370 (FATAL_SSL_NOT_FOUND_ERROR)  cmake/ssl.cmake:551 (FIND_SYSTEM_OPENSSL)  CMakeLists.txt:1859 (MYSQL_CHECK_SSL)-- Configuring incomplete, errors occurred!

安装openssl-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y openssl-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/readline.cmake:93 (MESSAGE):  Curses library not found.  Please install appropriate package,      remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel. # 提示,找不到 Curses 库。请安装合适的软件包,删除 CMakeCache.txt 并重新运行 cmake。在 Debian/Ubuntu 上,包名称是 libncurses5-dev,在 Redhat 及其衍生产品上是 ncurses-devel。Call Stack (most recent call first):  cmake/readline.cmake:127 (FIND_CURSES)  cmake/readline.cmake:221 (MYSQL_USE_BUNDLED_EDITLINE)  CMakeLists.txt:1966 (MYSQL_CHECK_EDITLINE)-- Configuring incomplete, errors occurred!

安装ncurses-devel:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y ncurses-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:41 (MESSAGE):  Cannot find RPC development libraries.  You need to install the required  packages: # 提示,找不到 RPC 开发库。您需要安装所需的包:    Debian/Ubuntu:              apt install libtirpc-dev    RedHat/Fedora/Oracle Linux: yum install libtirpc-devel    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  cmake/rpc.cmake:107 (WARN_MISSING_SYSTEM_TIRPC)  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)CMake Error at cmake/rpc.cmake:108 (MESSAGE):  Could not find rpc/rpc.h in /usr/include or /usr/include/tirpcCall Stack (most recent call first):  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)-- Configuring incomplete, errors occurred!

安装libtirpc-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y libtirpc-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:30 (MESSAGE):  Cannot find rpcgen executable.  You need to install the required packages: # 提示,找不到 rpcgen 可执行文件。您需要安装所需的软件包:    Debian/Ubuntu:              apt install rpcsvc-proto    RedHat/Fedora/Oracle Linux: yum install rpcgen    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:123 (WARN_MISSING_RPCGEN_EXECUTABLE)  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)CMake Error at plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:124 (MESSAGE):  Could not find rpcgenCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)-- Configuring incomplete, errors occurred!

安装rpcgen包:

代码语言:javascript
代码运行次数:0
运行
复制
[root@opencloudos8 mysql-8.4.5]# yum install -y rpcgenLast metadata expiration check: 0:01:02 ago on Wed 07 May 2025 12:24:52 AM CST.No match for argument: rpcgenError: Unable to find a match: rpcgen# 提示,找不到rpcgen包# OpenCloudOS 8要启用PowerTools镜像仓库dnf config-manager --set-enabled PowerToolsyum install -y rpcgen

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...-- Configuring done (1.4s)-- Generating done (2.3s)-- Build files have been written to: /usr/local/src/mysql-8.4.5

执行make:

代码语言:javascript
代码运行次数:0
运行
复制
make -j $(nproc) && make install

总结编译过程:

代码语言:javascript
代码运行次数:0
运行
复制
# OpenCloudOS 8要启用PowerTools镜像仓库dnf config-manager --set-enabled PowerTools# 安装依赖包yum install -y cmake gcc gcc-c++ bzip2 openssl-devel ncurses-devel libtirpc-devel rpcgen# 编译gccwget https://mirrors.cloud.tencent.com/gnu/gcc/gcc-11.5.0/gcc-11.5.0.tar.gztar xf gcc-11.5.0.tar.gzcd gcc-11.5.0./contrib/download_prerequisitesmkdir buildcd build/../configure --prefix=/usr --disable-multilib  make -j 4 && make install# 进入mysql包解压的目录cd ../../mysql-8.4.5/# 执行cmakecmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1# 执行makemake -j $(nproc) && make install
2.4.2.4.9 OpenCloudOS 9

进入mysql包解压的目录:

代码语言:javascript
代码运行次数:0
运行
复制
cd mysql-8.4.5/

安装cmake包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y cmake

执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
cmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning:  No source or binary directory provided.  Both will be assumed to be the  same as the current working directory, but note that this warning will  become a fatal error in future CMake releases.-- Running cmake version 3.26.5-- Could NOT find Git (missing: GIT_EXECUTABLE) -- CMAKE_MODULE_PATH is /usr/local/src/mysql-8.4.5/cmake-- MySQL 8.4.5-- The C compiler identification is unknown-- The CXX compiler identification is unknownCMake Error at CMakeLists.txt:514 (PROJECT):  No CMAKE_C_COMPILER could be found.  Tell CMake where to find the compiler by setting either the environment  variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to  the compiler, or to the compiler name if it is in the PATH. # 提示,通过设置环境变量 “CC” 或 CMake 缓存条目CMAKE_C_COMPILER到编译器,或者如果编译器名称在 PATH。CMake Error at CMakeLists.txt:514 (PROJECT):  No CMAKE_CXX_COMPILER could be found.  Tell CMake where to find the compiler by setting either the environment  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path  to the compiler, or to the compiler name if it is in the PATH. # 通过设置环境变量 “CXX” 或 CMake 缓存条目CMAKE_CXX_COMPILER完整路径添加到编译器,或者添加到编译器名称(如果它在 PATH 中)。-- Configuring incomplete, errors occurred!

安装gcc和gcc-c++包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y gcc gcc-c++

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/systemd.cmake:60 (MESSAGE):  Unable to detect systemd support on build machine, Aborting cmake build. # 提示,无法在构建计算机上检测到 systemd 支持,中止 cmake 构建。Call Stack (most recent call first):  cmake/systemd.cmake:80 (MYSQL_CHECK_SYSTEMD)  CMakeLists.txt:1555 (INCLUDE)-- Configuring incomplete, errors occurred!

安装systemd-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y systemd-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/ssl.cmake:85 (MESSAGE):  Please install the appropriate openssl developer package. # 提示,请安装相应的 openssl 开发人员软件包。Call Stack (most recent call first):  cmake/ssl.cmake:370 (FATAL_SSL_NOT_FOUND_ERROR)  cmake/ssl.cmake:551 (FIND_SYSTEM_OPENSSL)  CMakeLists.txt:1859 (MYSQL_CHECK_SSL)-- Configuring incomplete, errors occurred!

安装openssl-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y openssl-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/readline.cmake:93 (MESSAGE):  Curses library not found.  Please install appropriate package,      remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel. # 提示,找不到 Curses 库。请安装合适的软件包,删除 CMakeCache.txt 并重新运行 cmake。在 Debian/Ubuntu 上,包名称是 libncurses5-dev,在 Redhat 及其衍生产品上是 ncurses-devel。Call Stack (most recent call first):  cmake/readline.cmake:127 (FIND_CURSES)  cmake/readline.cmake:221 (MYSQL_USE_BUNDLED_EDITLINE)  CMakeLists.txt:1966 (MYSQL_CHECK_EDITLINE)-- Configuring incomplete, errors occurred!

安装ncurses-devel:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y ncurses-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:41 (MESSAGE):  Cannot find RPC development libraries.  You need to install the required  packages: # 提示,找不到 RPC 开发库。您需要安装所需的包:    Debian/Ubuntu:              apt install libtirpc-dev    RedHat/Fedora/Oracle Linux: yum install libtirpc-devel    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  cmake/rpc.cmake:107 (WARN_MISSING_SYSTEM_TIRPC)  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)CMake Error at cmake/rpc.cmake:108 (MESSAGE):  Could not find rpc/rpc.h in /usr/include or /usr/include/tirpcCall Stack (most recent call first):  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)-- Configuring incomplete, errors occurred!

安装libtirpc-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y libtirpc-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:30 (MESSAGE):  Cannot find rpcgen executable.  You need to install the required packages: # 提示,找不到 rpcgen 可执行文件。您需要安装所需的软件包:    Debian/Ubuntu:              apt install rpcsvc-proto    RedHat/Fedora/Oracle Linux: yum install rpcgen    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:123 (WARN_MISSING_RPCGEN_EXECUTABLE)  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)CMake Error at plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:124 (MESSAGE):  Could not find rpcgenCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)-- Configuring incomplete, errors occurred!

安装rpcgen包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y rpcgen

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...-- Configuring done (24.7s)-- Generating done (2.5s)-- Build files have been written to: /usr/local/src/mysql-8.4.5

执行make:

代码语言:javascript
代码运行次数:0
运行
复制
make -j $(nproc) && make install

总结编译过程:

代码语言:javascript
代码运行次数:0
运行
复制
# 安装依赖包yum install -y cmake gcc gcc-c++ systemd-devel openssl-devel ncurses-devel libtirpc-devel rpcgen# 进入mysql包解压的目录cd mysql-8.4.5/# 执行cmakecmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1# 执行makemake -j $(nproc) && make install
2.4.2.4.10 Kylin Server V10

进入mysql包解压的目录:

代码语言:javascript
代码运行次数:0
运行
复制
cd mysql-8.4.5/

安装cmake包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y cmake

执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
cmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning:  No source or binary directory provided.  Both will be assumed to be the  same as the current working directory, but note that this warning will  become a fatal error in future CMake releases.-- Running cmake version 3.16.5-- Could NOT find Git (missing: GIT_EXECUTABLE) -- CMAKE_MODULE_PATH is /usr/local/src/mysql-8.4.5/cmake-- MySQL 8.4.5CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles".  CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool. # 提示,CMake 错误:CMake 找不到与“Unix Makefiles”对应的构建程序。CMAKE_MAKE_PROGRAM 未设置。您可能需要选择其他构建工具。需要安装make。CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage # 提示,CMake 错误:EnableLanguage 后未设置 CMAKE_C_COMPILER,需要安装gcc。CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage # 提示,CMake 错误:在 EnableLanguage 之后未设置 CMAKE_CXX_COMPILER,需要安装gcc-c++。-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeOutput.log".

安装make、gcc和gcc-c++包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y make gcc gcc-c++

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at CMakeLists.txt:566 (MESSAGE):  This is an in-source build-- CMAKE_GENERATOR: Unix MakefilesCMake Error at cmake/os/Linux.cmake:73 (MESSAGE):  GCC 10 or newer is required # 提示,需要 GCC 10 或更高版本Call Stack (most recent call first):  CMakeLists.txt:667 (INCLUDE)-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeOutput.log".

编译安装gcc:

代码语言:javascript
代码运行次数:0
运行
复制
[root@kylin10 mysql-8.4.5]# gcc --versiongcc (GCC) 7.3.0 # 可以看到gcc版本是7.3.0Copyright (C) 2017 Free Software Foundation, Inc.This is free software; see the sourcefor copying conditions.  There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.cd ..# 注意:这里需要编译安装gcc 11,不要装gcc 10,装了gcc 10在登录mysql之后就退出了,报错“Segmentation fault”。wget https://mirrors.cloud.tencent.com/gnu/gcc/gcc-11.5.0/gcc-11.5.0.tar.gztar xf gcc-11.5.0.tar.gzcd gcc-11.5.0# 下载gcc依赖包./contrib/download_prerequisites2025-05-04 11:56:53 URL:https://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2 [2383840/2383840] -> "gmp-6.1.0.tar.bz2" [1]2025-05-04 11:56:56 URL:http://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.6.tar.bz2 [1287202/1287202] -> "mpfr-3.1.6.tar.bz2" [1]2025-05-04 11:56:59 URL:http://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz [669925/669925] -> "mpc-1.0.3.tar.gz" [1]2025-05-04 11:57:02 URL:http://gcc.gnu.org/pub/gcc/infrastructure/isl-0.18.tar.bz2 [1658291/1658291] -> "isl-0.18.tar.bz2" [1]gmp-6.1.0.tar.bz2: OKmpfr-3.1.6.tar.bz2: OKmpc-1.0.3.tar.gz: OKisl-0.18.tar.bz2: OKAll prerequisites downloaded successfully.mkdir buildcd build/# 执行configure../configure --prefix=/usr --disable-multilib ...configure: creating ./config.statusconfig.status: creating Makefile# 执行makemake -j 4 && make install...make[4]: Nothing to be donefor'install-data-am'.make[4]: Leaving directory '/usr/local/src/gcc-11.5.0/build/x86_64-pc-linux-gnu/libatomic'make[3]: Leaving directory '/usr/local/src/gcc-11.5.0/build/x86_64-pc-linux-gnu/libatomic'make[2]: Leaving directory '/usr/local/src/gcc-11.5.0/build/x86_64-pc-linux-gnu/libatomic'make[1]: Leaving directory '/usr/local/src/gcc-11.5.0/build'[root@kylin10 build]# gcc --versiongcc (GCC) 11.5.0Copyright (C) 2021 Free Software Foundation, Inc.This is free software; see the sourcefor copying conditions.  There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

再次进入mysql包解压的目录:

代码语言:javascript
代码运行次数:0
运行
复制
cd ../../mysql-8.4.5/

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/ssl.cmake:85 (MESSAGE):  Please install the appropriate openssl developer package. # 提示,请安装相应的 openssl 开发人员软件包。Call Stack (most recent call first):  cmake/ssl.cmake:370 (FATAL_SSL_NOT_FOUND_ERROR)  cmake/ssl.cmake:551 (FIND_SYSTEM_OPENSSL)  CMakeLists.txt:1859 (MYSQL_CHECK_SSL)-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeOutput.log".See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeError.log".

安装openssl-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y openssl-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Error at cmake/readline.cmake:93 (MESSAGE):  Curses library not found.  Please install appropriate package,      remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel. # 提示,找不到 Curses 库。请安装合适的软件包,删除 CMakeCache.txt 并重新运行 cmake。在 Debian/Ubuntu 上,包名称是 libncurses5-dev,在 Redhat 及其衍生产品上是 ncurses-devel。Call Stack (most recent call first):  cmake/readline.cmake:127 (FIND_CURSES)  cmake/readline.cmake:221 (MYSQL_USE_BUNDLED_EDITLINE)  CMakeLists.txt:1966 (MYSQL_CHECK_EDITLINE)-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeOutput.log".See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeError.log".

安装ncurses-devel:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y ncurses-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:41 (MESSAGE):  Cannot find RPC development libraries.  You need to install the required  packages: # 提示,找不到 RPC 开发库。您需要安装所需的包:    Debian/Ubuntu:              apt install libtirpc-dev    RedHat/Fedora/Oracle Linux: yum install libtirpc-devel    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  cmake/rpc.cmake:107 (WARN_MISSING_SYSTEM_TIRPC)  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)CMake Error at cmake/rpc.cmake:108 (MESSAGE):  Could not find rpc/rpc.h in /usr/include or /usr/include/tirpcCall Stack (most recent call first):  CMakeLists.txt:2097 (MYSQL_CHECK_RPC)-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeOutput.log".See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeError.log".

安装libtirpc-devel包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y libtirpc-devel

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...CMake Warning at cmake/rpc.cmake:30 (MESSAGE):  Cannot find rpcgen executable.  You need to install the required packages:  # 提示,找不到 rpcgen 可执行文件。您需要安装所需的软件包:    Debian/Ubuntu:              apt install rpcsvc-proto    RedHat/Fedora/Oracle Linux: yum install rpcgen    SuSE:                       zypper install glibc-develCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:123 (WARN_MISSING_RPCGEN_EXECUTABLE)  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)CMake Error at plugin/group_replication/libmysqlgcs/cmake/rpcgen.cmake:124 (MESSAGE):  Could not find rpcgenCall Stack (most recent call first):  plugin/group_replication/libmysqlgcs/CMakeLists.txt:51 (INCLUDE)-- Configuring incomplete, errors occurred!See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeOutput.log".See also "/usr/local/src/mysql-8.4.5/CMakeFiles/CMakeError.log".

安装rpcgen包:

代码语言:javascript
代码运行次数:0
运行
复制
yum install -y rpcgen

继续执行cmake:

代码语言:javascript
代码运行次数:0
运行
复制
# 再次执行cmake之前先删除“CMakeCache.txt”文件rm -f CMakeCache.txtcmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1...# 正常会有类似如下的输出-- Configuring done-- Generating done-- Build files have been written to: /usr/local/src/mysql-8.4.5

执行make:

代码语言:javascript
代码运行次数:0
运行
复制
make -j $(nproc) && make install

总结编译过程:

代码语言:javascript
代码运行次数:0
运行
复制
# 安装依赖包yum install -y cmake make gcc gcc-c++ openssl-devel ncurses-devel libtirpc-devel rpcgen# 编译gccwget https://mirrors.cloud.tencent.com/gnu/gcc/gcc-11.5.0/gcc-11.5.0.tar.gztar xf gcc-11.5.0.tar.gzcd gcc-11.5.0./contrib/download_prerequisitesmkdir buildcd build/../configure --prefix=/usr --disable-multilib  make -j 4 && make install# 进入mysql包解压的目录cd ../../mysql-8.4.5/# 执行cmakecmake \-DCMAKE_INSTALL_PREFIX=/apps/mysql \-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DSYSTEMD_PID_DIR=/apps/mysql \-DDEFAULT_CHARSET=utf8mb4 \-DDEFAULT_COLLATION=utf8mb4_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_DATADIR=/data/mysql/ \-DFORCE_INSOURCE_BUILD=1 \-DWITH_SYSTEMD=1# 执行makemake -j $(nproc) && make install

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2.4.2.4.6 openEuler 22.03/24.03 LTS
  • 2.4.2.4.7 AnolisOS 23
  • 2.4.2.4.8 AnolisOS 8和OpenCloudOS 8
  • 2.4.2.4.9 OpenCloudOS 9
  • 2.4.2.4.10 Kylin Server V10
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档