【问题描述】
使用麒麟V10 SP3 2403自带GCC 7.3.0编译MySQL 8.0.43出现如下报错
/home/mysql-8.0.43/router/src/harness/include/hexify.h:30:10: fatal error: charconv: No such file or directory
#include <charconv>
^~~~~~~~~~
compilation terminated.
注:<charconv> 是 C++17 标准引入的头文件,主要用于高效的字符串与数值之间的转换;当编译器版本过低时,就会无法识别这个新特性;建议升级到 GCC 10.1.0 或更高版本。
【解决方法】
1、编译安装开源GCC 11.3.0(安装路径为/usr/local/gcc-11.3.0)并在/etc/profile增加如下内容保存(配置环境变量)
export PATH=/usr/local/gcc-11.3.0/bin:/usr/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/gcc-11.3.0/lib64:/usr/local/gcc-11.3.0/lib:/usr/lib:/usr/lib64:/usr/local/lib:$LD_LIBRARY_PATH
source /etc/profile
2、执行export CC和export CXX,再执行cmake和make
export CC=/usr/local/gcc-11.3.0/bin/gcc
export CXX=/usr/local/gcc-11.3.0/bin/g++
cmake .. -DBUILD_CONFIG=mysql_release -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql/data -DWITH_BOOST=/home/mysql-8.0.43/boost/boost_1_77_0
make -j
make -j install
【问题描述】
使用麒麟V10 SP3 2403自带GCC 7.3.0编译MySQL 8.0.43出现如下报错
/home/mysql-8.0.43/router/src/harness/include/hexify.h:30:10: fatal error: charconv: No such file or directory
#include <charconv>
^~~~~~~~~~
compilation terminated.
注:<charconv> 是 C++17 标准引入的头文件,主要用于高效的字符串与数值之间的转换;当编译器版本过低时,就会无法识别这个新特性;建议升级到 GCC 10.1.0 或更高版本。
【解决方法】
1、编译安装开源GCC 11.3.0(安装路径为/usr/local/gcc-11.3.0)并在/etc/profile增加如下内容保存(配置环境变量)
export PATH=/usr/local/gcc-11.3.0/bin:/usr/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/gcc-11.3.0/lib64:/usr/local/gcc-11.3.0/lib:/usr/lib:/usr/lib64:/usr/local/lib:$LD_LIBRARY_PATH
source /etc/profile
2、执行export CC和export CXX,再执行cmake和make
export CC=/usr/local/gcc-11.3.0/bin/gcc
export CXX=/usr/local/gcc-11.3.0/bin/g++
cmake .. -DBUILD_CONFIG=mysql_release -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql/data -DWITH_BOOST=/home/mysql-8.0.43/boost/boost_1_77_0
make -j
make -j install