Summary: | dev-db/mysql-workbench-6.2.3-r1 with dev-db/mysql-connector-c++-1.1.5 - Unknown CMake command "add_definition". | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Martin von Gagern <Martin.vGagern> |
Component: | [OLD] Development | Assignee: | Hans de Graaff <graaff> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | poulin.guillaume |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
Change to add_definitions
Allow successful compilation against connector 1.1.5 build-log emerge-info |
(In reply to Martin von Gagern from comment #0) > Changing that, the workbench builds as expected. I've been too quick: the configure phase went well, but eventually I got this: /var/tmp/portage/dev-db/mysql-workbench-6.2.3-r1/work/mysql-workbench-community-6.2.3-src/library/cdbc/src/driver_manager.cpp: In member function ‘sql::ConnectionWrapper sql::DriverManager::getConnection(const db_mgmt_ConnectionRef&, boost::shared_ptr<sql::TunnelConnection>, sql::Authentication::Ref, sql::DriverManager::ConnectionInitSlot)’: /var/tmp/portage/dev-db/mysql-workbench-6.2.3-r1/work/mysql-workbench-community-6.2.3-src/library/cdbc/src/driver_manager.cpp:405:74: error: no matching function for call to ‘get(sql::Variant&)’ sql::SQLString &val= boost::get<sql::SQLString>(prop_iter->second); This, too, appears to be due to the mysql-connector-c++ version in use. Where 1.1.3 had typedef “boost::variant<…> ConnectPropertyVal”, 1.1.5 has “typedef sql::Variant ConnectPropertyVal”. I'm working on a patch… Created attachment 397728 [details, diff]
Allow successful compilation against connector 1.1.5
Created attachment 398186 [details]
build-log
Created attachment 398188 [details]
emerge-info
reproduction always: dev-db/mysql-connector-c++-1.1.5 Thanks for the patches. I just added mysql-workbench 6.2.5 to the tree, and it looks like the compatibility issues with mysql-connector-c++ have been fixed upstream. The CMakeList.txt typo has been fixed, and the code in driver_manager.cpp has been rewritten, I assume in a more compatible way. Please reopen if there are still issues with mysql-workbench-6.2.5. |
Created attachment 397720 [details, diff] Change to add_definitions -- Found MYSQLCPPCONN: /usr/lib64/libmysqlcppconn.so -- C/C++ version 1.1.4+: TRUE -- Found VSQLITE: /usr/lib64/libvsqlitepp.so -- Found TINYXML: /usr/lib64/libtinyxml.so -- Found GDAL: /usr/lib64/libgdal.so CMake Error at CMakeLists.txt:92 (add_definition): Unknown CMake command "add_definition". The lines in question read if (MYSQLCPPCONN_VERSION_1_1_4) add_definition(-DMYSQLCPPCONN_VERSION_1_1_4) endif () but I guess that should be “add_definitions”, with a trailing “s”. Changing that, the workbench builds as expected.