Bug #75026 CMake doesn't print which Boost version is required
Submitted: 27 Nov 2014 14:47 Modified: 2 Feb 2015 15:35
Reporter: Norvald Ryeng Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:5.7.5 OS:Any
Assigned to: CPU Architecture:Any

[27 Nov 2014 14:47] Norvald Ryeng
Description:
If the user doesn't have boost installed at all, CMake only prints instructions for how to fetch Boost, not which version is needed.

How to repeat:
$ cmake .. -DWITH_DEBUG=1 -DENABLE_DOWNLOADS=1
-- Running cmake version 2.8.12.2
-- Found Git: /usr/bin/git (found version "2.1.0") 
-- Configuring with MAX_INDEXES = 64U
-- The C compiler identification is GNU 4.9.1
-- The CXX compiler identification is GNU 4.9.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for SHM_HUGETLB
-- Looking for SHM_HUGETLB - found
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of void *
-- Check size of void * - done
-- SIZEOF_VOIDP 8
-- MySQL 5.7.6-m16
-- Packaging as: mysql-5.7.6-m16-Linux-x86_64
-- WITH_BOOST=/home/nryeng/myboost2
-- BOOST_INCLUDE_DIR 
-- LOCAL_BOOST_DIR LOCAL_BOOST_DIR-NOTFOUND
-- LOCAL_BOOST_ZIP LOCAL_BOOST_ZIP-NOTFOUND
-- Could not find (the correct version of) boost.

CMake Error at cmake/boost.cmake:75 (MESSAGE):
  You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>

  This CMake script will look for boost in <directory>.  If it is not there,
  it will download and unpack it (in that directory) for you.

  If you are inside a firewall, you may need to use an http proxy:

  export http_proxy=http://example.com:80

Call Stack (most recent call first):
  cmake/boost.cmake:154 (COULD_NOT_FIND_BOOST)
  CMakeLists.txt:452 (INCLUDE)

-- Configuring incomplete, errors occurred!
See also "/home/nryeng/mysql/trunk-test/bld2/CMakeFiles/CMakeOutput.log".

Suggested fix:
Instead of "Could not find (the correct version of) boost", print something that contains the correct version number.
[2 Feb 2015 15:35] Paul DuBois
Noted in 5.7.6 changelog.

When CMake did not find the required version of Boost, the error
message did not indicate the required version. Now it does.