Bug 228810 - databases/mysql80-server - compile fails
Summary: databases/mysql80-server - compile fails
Status: Closed DUPLICATE of bug 228234
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: Mahdi Mokhtari
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-07 16:36 UTC by Curtis Villamizar
Modified: 2018-06-28 13:14 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (mmokhi)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Curtis Villamizar 2018-06-07 16:36:39 UTC
Compile fails with the following messages (an assert in a boost include file).

#  uname -a

FreeBSD r11-amd64.v6ds.occnc.com 11.2-BETA3 FreeBSD 11.2-BETA3 #0 r334309: Tue May 29 11:48:53 EDT 2018     root@amd64-boot1.v6only.occnc.com:/usr/releng/r11-20180528/obj.amd64.occnc11.amd64/usr/releng/r11-20180528/src/sys/occnc11.amd64  amd64

# make MAKE_JOBS_UNSAFE=yes

[...]

cd /usr/releng/r11-20180528/ports/databases/mysql80-server/work/.build/sql && /usr/bin/c++  -DHAVE_CONFIG_H -DHAVE_LIBEVENT2 -DHAVE_OPENSSL -DMYSQL_SERVER -DRAPIDJSON_NO_SIZETYPEDEFINE -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit -D_USE_MATH_DEFINES -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/.build -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/.build/include -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/.build/rapid -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11 -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/include -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/rapid -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/.build/libbinlogevents/include -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/libbinlogevents/export -isystem /usr/local/include -isystem /usr/local/include/editline -isystem /usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/extra/rapidjson/include -I/usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/libbinlogevents/include -isystem /usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/include/boost_1_66_0/patches -isystem /usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/boost/boost_1_66_0 -O2 -pipe -fPIC -fstack-protector -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -Wall -Wextra -Wformat-security -Wvla -Wundef -Wmissing-format-attribute -Woverloaded-virtual -Wno-null-conversion -Wno-unused-private-field -Wconditional-uninitialized -Wheader-hygiene -Wnon-virtual-dtor -Wundefined-reinterpret-cast -O2 -pipe -fPIC -fstack-protector -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11  -DDBUG_OFF -o CMakeFiles/sql_gis.dir/gis/ring_flip_visitor.cc.o -c /usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/sql/gis/ring_flip_visitor.cc
In file included from /usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/sql/gis/ring_flip_visitor.cc:23:
In file included from /usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/sql/gis/ring_flip_visitor.h:26:
In file included from /usr/local/include/boost/geometry.hpp:17:
In file included from /usr/local/include/boost/geometry/geometry.hpp:49:
In file included from /usr/local/include/boost/geometry/strategies/strategies.hpp:58:
In file included from /usr/local/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:25:
In file included from /usr/local/include/boost/geometry/algorithms/detail/distance/point_to_geometry.hpp:42:
In file included from /usr/local/include/boost/geometry/algorithms/covered_by.hpp:24:
In file included from /usr/local/include/boost/geometry/algorithms/detail/covered_by/implementation.hpp:26:
In file included from /usr/local/include/boost/geometry/algorithms/detail/within/implementation.hpp:44:
In file included from /usr/local/include/boost/geometry/algorithms/detail/within/multi_point.hpp:25:
In file included from /usr/local/include/boost/geometry/algorithms/envelope.hpp:22:
In file included from /usr/local/include/boost/geometry/algorithms/detail/envelope/interface.hpp:36:
In file included from /usr/local/include/boost/geometry/strategies/geographic/envelope_segment.hpp:21:
In file included from /usr/local/include/boost/geometry/strategies/geographic/azimuth.hpp:18:
/usr/local/include/boost/geometry/strategies/geographic/parameters.hpp:143:5: error: 
      no matching function for call to 'assertion_failed'
    BOOST_MPL_ASSERT_MSG
    ^~~~~~~~~~~~~~~~~~~~
/usr/local/include/boost/mpl/assert.hpp:435:48: note: expanded from macro
      'BOOST_MPL_ASSERT_MSG'
#define BOOST_MPL_ASSERT_MSG( c, msg, types_ ) \
                                               ^
/usr/local/include/boost/mpl/assert.hpp:429:9: note: expanded from macro '\
BOOST_MPL_ASSERT_MSG_IMPL'
  ...boost::mpl::assertion_failed<(c)>( BOOST_PP_CAT(mpl_assert_arg,counter)::assert_arg() ) \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/boost/mpl/assert.hpp:60:58: note: expanded from macro '\
BOOST_MPL_AUX_ASSERT_CONSTANT'
#   define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) enum { expr }
                                                         ^~~~
/usr/local/include/boost/geometry/strategies/geographic/area.hpp:54:41: note: 
      in instantiation of template class
      'boost::geometry::strategy::default_order<gis::Geographic_point>'
      requested here
    std::size_t SeriesOrder = strategy::default_order<FormulaPolicy>::value,
                                        ^
/usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/sql/gis/ring_flip_visitor.h:43:36: note: 
      in instantiation of default argument for
      'geographic<gis::Geographic_point>' required here
  boost::geometry::strategy::area::geographic<Geographic_point>
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/boost/mpl/assert.hpp:83:5: note: candidate function not
      viable: no known conversion from 'boost::mpl::failed
      ************(boost::geometry::strategy::default_order<gis::Geographic_point>::NOT_IMPLEMENTED_FOR_THIS_TYPE::************)(types<gis::Geographic_point>)'
      to 'typename assert<false>::type' (aka 'mpl_::assert<false>') for 1st
      argument
int assertion_failed( typename assert<C>::type );
    ^
In file included from /usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/sql/gis/ring_flip_visitor.cc:23:
/usr/releng/r11-20180528/ports/databases/mysql80-server/work/mysql-8.0.11/sql/gis/ring_flip_visitor.h:40:7: warning: 
      'gis::Ring_flip_visitor' has virtual functions but non-virtual destructor
      [-Wnon-virtual-dtor]
class Ring_flip_visitor : public Nop_visitor {
      ^
1 warning and 1 error generated.
*** Error code 1

Stop.
make[4]: stopped in /usr/releng/r11-20180528/ports/databases/mysql80-server/work/.build
*** Error code 1
Comment 1 Curtis Villamizar 2018-06-07 16:40:10 UTC
See also https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=228788 (change needed to get mysql80-client to get past make patch stage).  That is needed to get this compile to even run but the former affects only the client build (which is now successful).  This bug reports the server build fail.
Comment 2 Curtis Villamizar 2018-06-18 16:00:18 UTC
Reminder: FreeBSD 11.2 is in RC3.  It would be nice if mysql80-server compiled.
Comment 3 Mahdi Mokhtari freebsd_committer freebsd_triage 2018-06-18 17:53:39 UTC
Hi again,
Thanks for the reminder, I'm currently working to reproduce the issue (the PR# 228788 hopefully I can commit the fix till tomorrow :D)
Comment 4 klaus 2018-06-27 23:50:53 UTC
@Curtis Villamizar:

do you have boost-libs / boost-jam 1.67 installed on that machine 
(e. g. as dependencies by another port) ?

I had this on a few of my machines that run with mysql80-server (8.0.11),
although mysql 8.0 brings its own boost-libs 1.66 bundled.

I removed the boost-libs 1.67 and boost-jam 1.67 from that system and
mysql80-server compiled without errors ...

Hope that helps as a workaround ... :-)
Comment 5 Curtis Villamizar 2018-06-28 04:10:56 UTC
(In reply to klaus from comment #4)
"pkg info -a | grep boost" comes up empty.
Thanks for the hint but that didn't do it.
Comment 6 Curtis Villamizar 2018-06-28 04:15:58 UTC
I changed make.conf on a new build (of many ports) and got a different symptom.

===>  Installing for mysql80-server-8.0.11
===>  Checking if mysql80-server already installed
===>   Registering installation for mysql80-server-8.0.11
pkg-static: Unable to access file /usr/releng/r11-20180625/ports/databases/mysql80-server/work/stage/usr/local/bin/zlib_decompress:No such file or directory
*** Error code 74

Stop.
make[1]: stopped in /usr/releng/r11-20180625/ports/databases/mysql80-server
*** Error code 1

Stop.
make: stopped in /usr/releng/r11-20180625/ports/databases/mysql80-server

The change to /etc/make.conf was to replace "DEFAULT_VERSIONS+= python=3.6" with "DEFAULT_VERSIONS+= python=3.6 python2=2.7 python3=3.6".  This helps a lot of ports built with cmake.
Comment 7 Curtis Villamizar 2018-06-28 13:14:52 UTC
The prior problem I was having may be related to cmake's use of python and not forcing the use of python2 (or declaring itself broken for python3) if DEFAULT_VERSIONS+= python=3.6 is set.

The current problem is a duplicate of https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=228234 and I'll mark this one as duplicate.

Separately I'll look into what is going on with cmake and python3 on a burner compile server (a VM created for testing and then destroyed) and maybe file a bug against cmake.

*** This bug has been marked as a duplicate of bug 228234 ***