Bug #78087 | include could not find load file: mysql_version_info.cmake | ||
---|---|---|---|
Submitted: | 15 Aug 2015 22:08 | Modified: | 17 Aug 2015 22:34 |
Reporter: | Сергей Соболев | Email Updates: | |
Status: | Can't repeat | Impact on me: | |
Category: | Connector / C++ | Severity: | S3 (Non-critical) |
Version: | 1.1.6 | OS: | Windows |
Assigned to: | CPU Architecture: | Any |
[15 Aug 2015 22:08]
Сергей Соболев
[16 Aug 2015 0:50]
MySQL Verification Team
c:\mysql-connector-c++-1.1.6>type short.cmd @ECHO OFF echo %~s1 c:\mysql-connector-c++-1.1.6>short "C:\Program Files\MySQL\MySQL Server 5.6" C:\PROGRA~1\MySQL\MYSQLS~1.6 c:\mysql-connector-c++-1.1.6>set MYSQL_DIR=C:\PROGRA~1\MySQL\MYSQLS~1.6 c:\mysql-connector-c++-1.1.6>cmake -DBOOST_ROOT=C:\boost_1_58_0 -G "Visual Studio 12 2013" -- Environment compile flags: -- Environment link flags: -- Boost version: 1.58.0 -- BOOST_INCLUDE_DIRS=C:/boost_1_58_0 -- You will link dynamically to the MySQL client library (set with -DMYSQLCLIENT_STATIC_LINKING=<bool>) -- Searching for dynamic libraries with the base name(s) "libmysql" -- MySQL client environment/cmake variables set that the user can override -- MYSQL_DIR : C:/PROGRA~1/MySQL/MYSQLS~1.6 -- MYSQL_INCLUDE_DIR : C:/PROGRA~1/MySQL/MYSQLS~1.6/include -- MYSQL_LIB_DIR : C:/Program Files/MySQL/MySQL Server 5.6/lib -- MYSQL_CONFIG_EXECUTABLE : -- MYSQL_CXX_LINKAGE : -- MYSQL_CFLAGS : -- MYSQL_CXXFLAGS : -- MYSQLCLIENT_STATIC_LINKING : -- MYSQLCLIENT_NO_THREADS : -- MySQL client optional environment/cmake variables set by the user -- MYSQL_EXTRA_LIBRARIES : -- MYSQL_LINK_FLAGS : -- MySQL client settings that the user can't override -- MYSQL_VERSION : -- MYSQL_NUM_VERSION : -- MYSQL_LIB : C:/Program Files/MySQL/MySQL Server 5.6/lib/libmysql.lib -- MYSQL_LIBRARIES : C:/Program Files/MySQL/MySQL Server 5.6/lib/libmysql.lib -- Installation path is: C:/Program Files (x86)/MySQL/ConnectorCPP (overwrite with -DCMAKE_INSTALL_PREFIX=/your/path) -- Looking for include file stdint.h -- Looking for include file stdint.h - found -- Looking for include file inttypes.h -- Looking for include file inttypes.h - found -- Looking for sys/types.h -- Looking for sys/types.h - found -- Looking for stddef.h -- Looking for stddef.h - found -- Check size of int8_t -- Check size of int8_t - done -- Check size of uint8_t -- Check size of uint8_t - done -- Check size of int16_t -- Check size of int16_t - done -- Check size of uint16_t -- Check size of uint16_t - done -- Check size of int32_t -- Check size of int32_t - done -- Check size of uint32_t -- Check size of uint32_t - done -- Check size of int64_t -- Check size of int64_t - done -- Check size of uint64_t -- Check size of uint64_t - done -- Check size of __int8 -- Check size of __int8 - done -- Check size of unsigned __int8 -- Check size of unsigned __int8 - done -- Check size of __int16 -- Check size of __int16 - done -- Check size of unsigned __int16 -- Check size of unsigned __int16 - done -- Check size of __int32 -- Check size of __int32 - done -- Check size of unsigned __int32 -- Check size of unsigned __int32 - done -- Check size of __int64 -- Check size of __int64 - done -- Check size of unsigned __int64 -- Check size of unsigned __int64 - done -- Looking for strtold -- Looking for strtold - found -- Looking for strtol -- Looking for strtol - found -- Looking for strtoll -- Looking for strtoll - found -- Looking for strtoul -- Looking for strtoul - found -- Looking for strtoull -- Looking for strtoull - found -- Looking for strtoimax -- Looking for strtoimax - found -- Looking for strtoumax -- Looking for strtoumax - found -- Using static libmysql binding -- DT_RPATH will not be set -- Configuring driver -- MySQL dynamic load test library: C:/Program Files/MySQL/MySQL Server 5.6/lib/libmysql.dll -- Configuring examples -- Configuring test cases -- Configuring tests framework lib -- Configuring C/J junit tests port -- MySQL dynamic load test library: C:/Program Files/MySQL/MySQL Server 5.6/lib/libmysql.dll -- Configuring unit tests -- Configuring unit tests - examples -- Configuring unit tests - connection -- Configuring unit tests - databasemetadata -- Configuring unit tests - resultsetmetadata -- Configuring unit tests - resultset -- Configuring unit tests - savepoint -- Configuring unit tests - preparedstatement -- Configuring unit tests - parametermetadata -- Configuring unit tests - art_resultset -- Configuring unit tests - statement -- Configuring unit tests - uri -- Configuring unit tests - variant -- Configuring performance test - statement -- Configuring bugs test cases - unsorted -- Configuring unit tests - group template_bug -- Configuring done CMake Warning (dev) in driver/CMakeLists.txt: Policy CMP0022 is not set: INTERFACE_LINK_LIBRARIES defines the link interface. Run "cmake --help-policy CMP0022" for policy details. Use the cmake_policy command to set the policy and suppress this warning. Target "mysqlcppconn" has an INTERFACE_LINK_LIBRARIES property which differs from its LINK_INTERFACE_LIBRARIES properties. INTERFACE_LINK_LIBRARIES: mysqlclient;ws2_32 LINK_INTERFACE_LIBRARIES: This warning is for project developers. Use -Wno-dev to suppress it. -- Generating done -- Build files have been written to: C:/mysql-connector-c++-1.1.6 c:\mysql-connector-c++-1.1.6>dir *.sln Volume in drive C has no label. Volume Serial Number is 484B-43B0 Directory of c:\mysql-connector-c++-1.1.6 08/15/2015 09:42 PM 43,299 MYSQLCPPCONN.sln 1 File(s) 43,299 bytes 0 Dir(s) 1,115,867,803,648 bytes free
[16 Aug 2015 8:21]
Сергей Соболев
I forget to mention that I used cmake-gui. I tried console version cmake and it generate project without error. with full or short path to my sql. but cmake-gui still get error even with short path to my sql. previos C++ connector version I built with cmake-gui.
[16 Aug 2015 13:19]
Сергей Соболев
some wierd things happend. if I run console cmake after unsuccesful cmake-gui, sometimes it build solution successful. but if I run it on pure source dirrectory, id doesn't work: The C compiler identification is MSVC 18.0.40629.0 The CXX compiler identification is MSVC 18.0.40629.0 Check for working C compiler using: Visual Studio 12 2013 Win64 Check for working C compiler using: Visual Studio 12 2013 Win64 -- works Detecting C compiler ABI info Detecting C compiler ABI info - done Check for working CXX compiler using: Visual Studio 12 2013 Win64 Check for working CXX compiler using: Visual Studio 12 2013 Win64 -- works Detecting CXX compiler ABI info Detecting CXX compiler ABI info - done Detecting CXX compile features Detecting CXX compile features - done Environment compile flags: Environment link flags: Boost version: 1.59.0 BOOST_INCLUDE_DIRS=C:/boost_1_59_0 You will link dynamically to the MySQL client library (set with -DMYSQLCLIENT_STATIC_LINKING=<bool>) Searching for dynamic libraries with the base name(s) "libmysql" CMake Error at FindMySQL.cmake:578 (include): include could not find load file: E:/Distr/SQL servers/mysql-connector-c++-1.1.6/cmake/mysql_version_info.cmake Call Stack (most recent call first): CMakeLists.txt:217 (INCLUDE) MySQL client environment/cmake variables set that the user can override MYSQL_DIR : c:/PROGRA~1/MySQL/MYSQLS~1.7 MYSQL_INCLUDE_DIR : c:/PROGRA~1/MySQL/MYSQLS~1.7/include MYSQL_LIB_DIR : c:/Program Files/MySQL/MySQL Server 5.7/lib MYSQL_CONFIG_EXECUTABLE : MYSQL_CXX_LINKAGE : MYSQL_CFLAGS : MYSQL_CXXFLAGS : MYSQLCLIENT_STATIC_LINKING : MYSQLCLIENT_NO_THREADS : MySQL client optional environment/cmake variables set by the user MYSQL_EXTRA_LIBRARIES : MYSQL_LINK_FLAGS : MySQL client settings that the user can't override MYSQL_VERSION : MYSQL_NUM_VERSION : MYSQL_LIB : c:/Program Files/MySQL/MySQL Server 5.7/lib/libmysql.lib MYSQL_LIBRARIES : c:/Program Files/MySQL/MySQL Server 5.7/lib/libmysql.lib Installation path is: C:/Program Files/MySQL/ConnectorCPP (overwrite with -DCMAKE_INSTALL_PREFIX=/your/path) Looking for include file stdint.h Looking for include file stdint.h - found Looking for include file inttypes.h Looking for include file inttypes.h - found Looking for sys/types.h Looking for sys/types.h - found Looking for stddef.h Looking for stddef.h - found Check size of int8_t Check size of int8_t - done Check size of uint8_t Check size of uint8_t - done Check size of int16_t Check size of int16_t - done Check size of uint16_t Check size of uint16_t - done Check size of int32_t Check size of int32_t - done Check size of uint32_t Check size of uint32_t - done Check size of int64_t Check size of int64_t - done Check size of uint64_t Check size of uint64_t - done Check size of __int8 Check size of __int8 - done Check size of unsigned __int8 Check size of unsigned __int8 - done Check size of __int16 Check size of __int16 - done Check size of unsigned __int16 Check size of unsigned __int16 - done Check size of __int32 Check size of __int32 - done Check size of unsigned __int32 Check size of unsigned __int32 - done Check size of __int64 Check size of __int64 - done Check size of unsigned __int64 Check size of unsigned __int64 - done Looking for strtold Looking for strtold - found Looking for strtol Looking for strtol - found Looking for strtoll Looking for strtoll - found Looking for strtoul Looking for strtoul - found Looking for strtoull Looking for strtoull - found Looking for strtoimax Looking for strtoimax - found Looking for strtoumax Looking for strtoumax - found Using static libmysql binding DT_RPATH will not be set Configuring driver MySQL dynamic load test library: c:/Program Files/MySQL/MySQL Server 5.7/lib/libmysql.dll Configuring examples Configuring test cases Configuring tests framework lib Configuring C/J junit tests port MySQL dynamic load test library: c:/Program Files/MySQL/MySQL Server 5.7/lib/libmysql.dll Configuring unit tests Configuring unit tests - examples Configuring unit tests - connection Configuring unit tests - databasemetadata Configuring unit tests - resultsetmetadata Configuring unit tests - resultset Configuring unit tests - savepoint Configuring unit tests - preparedstatement Configuring unit tests - parametermetadata Configuring unit tests - art_resultset Configuring unit tests - statement Configuring unit tests - uri Configuring unit tests - variant Configuring performance test - statement Configuring bugs test cases - unsorted Configuring unit tests - group template_bug Configuring incomplete, errors occurred! See also "E:/Distr/SQL servers/mysql-connector-c++-1.1.6/CMakeFiles/CMakeOutput.log".
[17 Aug 2015 22:34]
Сергей Соболев
what's purpose of code below in FindMySQL.cmake? if I delete it, cmake works fine. MYSQL_INCLUDE_DIR is set MYSQL_NUM_VERSION is not set so it should run, but you don't get error about missing mysql_version_info.cmake why? if (MYSQL_INCLUDE_DIR AND NOT MYSQL_NUM_VERSION) try_run(RUN_RESULT_VAR COMPILE_RESULT_VAR "${CMAKE_BINARY_DIR}" "${CMAKE_SOURCE_DIR}/cmake/getmysqlversion.c" CMAKE_FLAGS -DINCLUDE_DIRECTORIES:STRING=${MYSQL_INCLUDE_DIR} ARGS "${CMAKE_BINARY_DIR}/cmake/mysql_version_info.cmake" "MYSQL_SERVER_VERSION" "MYSQL_VERSION_ID" "LIBMYSQL_VERSION" "LIBMYSQL_VERSION_ID") if(COMPILE_RESULT_VAR AND RUN_RESULT_VAR) include(${CMAKE_BINARY_DIR}/cmake/mysql_version_info.cmake) if(NOT LIBMYSQL_CPP_VERSION STREQUAL "") set(MYSQL_VERSION "${LIBMYSQL_CPP_VERSION}") elseif(NOT MYSQL_CPP_SERVER_VERSION STREQUAL "") set(MYSQL_VERSION "${MYSQL_CPP_SERVER_VERSION}") endif(NOT LIBMYSQL_CPP_VERSION STREQUAL "") string(REGEX MATCHALL "([0-9]+.[0-9]+.[0-9]+)" MYSQL_VERSION "${MYSQL_VERSION}") if(LIBMYSQL_CPP_VERSION_ID) set(MYSQL_NUM_VERSION ${LIBMYSQL_CPP_VERSION_ID}) elseif(MYSQL_CPP_SERVER_VERSION_ID) set(MYSQL_NUM_VERSION ${MYSQL_CPP_SERVER_VERSION_ID}) endif(LIBMYSQL_CPP_VERSION_ID) endif(COMPILE_RESULT_VAR AND RUN_RESULT_VAR) endif()