Bug #119391 /mysql-9.5.0/cmake/info_bin.cmake:37 (CREATE_INFO_BIN)
Submitted: 14 Nov 7:19
Reporter: 坚焱 郑 Email Updates:
Status: Open Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:9.5.0 OS:Linux (mysqld --no-defaults --help failed)
Assigned to: CPU Architecture:x86
Tags: doc

[14 Nov 7:19] 坚焱 郑
Description:
[ 54%] Generating Docs/INFO_SRC
[ 54%] Built target INFO_SRC
[ 54%] Built target mysqld
[ 54%] Generating Docs/INFO_BIN
CMake Error at info_macros.cmake:190 (MESSAGE):
  mysqld --no-defaults --help failed:
Call Stack (most recent call first):
  /.server/.install/mysql/mysql-9.5.0/cmake/info_bin.cmake:37 (CREATE_INFO_BIN)

make[2]: *** [CMakeFiles/INFO_BIN.dir/build.make:73: Docs/INFO_BIN] Error 1
make[2]: *** Deleting file 'Docs/INFO_BIN'
make[1]: *** [CMakeFiles/Makefile2:7342: CMakeFiles/INFO_BIN.dir/all] Error 2
make: *** [Makefile:166: all] Error 2
cmake failed. Exiting.

How to repeat:
你们源代码里面写了硬编码,无法通过参数来跳过文档生成的检查,
  -DENABLE_DOCS=OFF \
  -DDISABLE_DOCS_GENERATION=ON \
  -DSKIP_DOCS=ON \
  -DWITH_DOCS=OFF
 按道理添加这几个参数会跳过,但还是一样无效。

最终我的解决方案是
注释 mysql-$VERSION/cmake/info_bin.cmake file 里面的#CREATE_INFO_BIN才成功编译安装成功

VERSION=9.5.0

if [[ "$VERSION" != "" ]]; then
    echo $len
    echo "9.5.0 版本以上需要修改 mysql-$VERSION/cmake/info_bin.cmake file #CREATE_INFO_BIN "
    echo "[ 54%] Generating Docs/INFO_BIN CMake Error at info_macros.cmake:190 (MESSAGE): mysqld --no-defaults --help failed: Call Stack (most recent call first):cmake/info_bin.cmake:37 (CREATE_INFO_BIN)"
    echo $len
    sleep 10
    cat $BASE_PATH/mysql-$VERSION/cmake/info_bin.cmake
    echo $len
    sed -i 's/^CREATE_INFO_BIN/#CREATE_INFO_BIN/g' $BASE_PATH/mysql-$VERSION/cmake/info_bin.cmake
    cat $BASE_PATH/mysql-$VERSION/cmake/info_bin.cmake
    echo $len
fi

Suggested fix:
建议下一个版本修复这问题,非常感谢 admin@jufeng.co 修复 完能不能通知邮件给我。