MySQL 的编译安装

问题

又一次需要编译安装 MySQL数据库,这次使用的版本是 mysql-8.0.29-linux-glibc2.12-x86_64.tar.xz
时隔很久,再次浮现出同样的问题 ---- 编译安装 MySQL 需要的依赖包是做什么的?为什么 MySQL 依赖这些包?这些依赖包对 MySQL 编译安装有什么影响?

相关依赖包
yum -y install ncurses-devel openssl openssl-devel cmake gcc gcc-*

boost_1_79_0.tar.gz

目前只知道 cmake gcc gcc-* 是编译用的,仅知道是编译作用,其他包都不清楚

希望各界精英解答以下疑惑

1、为什么 MySQL 依赖这些包?
2、这些依赖包是什么?作用又是什么?
3、这些依赖包对 MySQL 编译安装的影响?

因为mysql是用C++语言开发的一个软件。这些依赖包就是编译运行环境,编译后才能被计算机系统识别!

ncurses-devel是ncurses库的开发文件,用于开发使用 ncurses 终端处理库的应用程序的头文件和库。
openSSL 工具包是为机器之间的安全通信提供支持。包括一个证书管理工具和共享提供各种加密算法的库和
协议。
openssl-devel是在使用openssl时需要的开发文件。
这些依赖包的功能即对mysql编译安装产生的影响,不安装会缺少对应的功能。

编译安装时,可选的组件有哪些?

目前只了解这些:

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=boost