使用Clion搭建MySQL源码阅读环境

669 阅读1分钟

源码阅读环境配置为:Clion+WSL2,支持阅读和调测。WSL2提供编译工具链,源码也下在里面。主要参考了这位兄弟的文章:# 使用 CLion 编译调试 MySQL 8.0
下面是个人的一些个性化配置。

  1. 给WSL2增加系统资源。通过用户目录下的.wslconfig文件进行配置。
    [wsl2]
    # Limits VM memory to use no more than 4 GB, this can be set as whole numbers using GB or MB
    memory=10GB 
    # Sets the VM to use two virtual processors
    processors=4
    # Sets amount of swap storage space to 8GB, default is 25% of available RAM
    swap=0GB
    
  2. 配置Clion的编译工具链:File | Settings | Build, Execution, Deployment | Toolchains
    1. Toolchains中新增一个WSL类型的工具链。Clion会自动导入本机的WSL实例,并找到编译工具链。
    2. CMake中新增Profile。我本地的选项配置如下。
       -DCMAKE_BUILD_TYPE=Debug
       -DWITH_BOOST=/home/dalton/z_back/boost/boost_1_77_0
       -DCMAKE_INSTALL_PREFIX=/home/dalton/z_back/mysql-server/cmake-build-debug-mysql
       -DMYSQL_DATADIR=/home/dalton/z_back/mysql-server/cmake-build-debug-mysql/data
       -DSYSCONFDIR=/home/dalton/z_back/mysql-server/cmake-build-debug-mysql
       -DMYSQL_UNIX_ADDR=/home/dalton/z_back/mysql-server/cmake-build-debug-mysql/mysql.sock
      
  3. 直接打开源码目录,Clion会自动执行Cmake命令。
  4. 修改mysqld程序的Run/Debug Configuration
    1. 程序参数:--basedir=/home/dalton/z_back/mysql-server/cmake-build-debug-mysql --datadir=/home/dalton/z_back/mysql-server/cmake-build-debug-mysql/data --user=dalton
    2. 工作目录:\\wsl$\ubuntu2004\home\dalton\z_back\mysql-server\cmake-build-debug-mysql\data
  5. 记得初始化数据库。
    bin/mysqld --basedir=/home/dalton/c_mysqldb/mysql-server/build --datadir=/home/dalton/c_mysqldb/mysql-server/build/data --user=dalton --initialize-insecure
  6. 在Clion的Registry参数:cidr.debugger.timeout。Debug的时候如果程序加载较慢,超过30s,会报:Command time out的错误。