Ubuntu下编译安装ScyllaDB遇依赖缺失与GCC版本过低问题求助
Let's tackle each error you ran into during the ./configure.py --mode=release step one by one:
1. Wrong GCC Version (Requires GCC >=7.3)
Your system's GCC version is too old for ScyllaDB's compilation requirements. Here's how to upgrade it based on your Linux distribution:
For Ubuntu/Debian-based systems:
- Install a newer GCC version first:
sudo apt update sudo apt install gcc-8 g++-8 - Set it as the default compiler for your system:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8 - Verify the upgrade worked:
gcc --version
For CentOS/RHEL-based systems:
- Enable the Software Collections (SCL) repository to access newer compilers:
sudo yum install centos-release-scl - Install GCC 8 and its C++ counterpart:
sudo yum install devtoolset-8-gcc devtoolset-8-gcc-c++ - Activate the newer compiler for your current session:
scl enable devtoolset-8 bash - To make this permanent (so you don't have to reactivate it every time), add the activation command to your shell config:
echo "source scl_source enable devtoolset-8" >> ~/.bashrc
2. Missing libsystemd (or libsystemd-daemon) Package
You need to install the development package for libsystemd to satisfy this dependency. Use the command matching your distribution:
Ubuntu/Debian:
sudo apt install libsystemd-dev
CentOS/RHEL:
sudo yum install systemd-devel
3. "Note: debug information disabled; upgrade your compiler"
This warning is a side effect of your outdated GCC version. Once you upgrade GCC to 7.3 or higher (as we did in step 1), this message will disappear automatically—newer compilers support the debug info flags ScyllaDB expects.
After resolving all three issues, re-run the configure command:
./configure.py --mode=release
If everything checks out, you can move forward with the ninja-build ./build/release/scylla step as originally planned.
内容的提问来源于stack exchange,提问作者John Smith

