Unable to build mcrouter on Ubuntu 16.04
Hi,
I've been trying to build mcrouter on a vanilla Ubuntu 16.04 instance using scripts/install_ubuntu_16.04.sh.
I initially ran into the issue where the gcc version prepackaged in Ubuntu 16.04 could not compile fbthrift since it didn't recognize the -std=gnu++1z option.
I updated the compiler version to 7.4.0 which helped me get past that issue:
g++ (Ubuntu 7.4.0-1ubuntu1~16.04~ppa1) 7.4.0 Copyright (C) 2017 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
I then hit an issue which seems to have been fixed yesterday by this commit: https://github.com/facebook/folly/commit/d6d6412f4ada06cf61c1d1275e91a7fb1562bdfe
Now I'm stuck at link time when mcrouter tries to link with some generated fbthrift object files:
libtool: link: g++ -DLIBMC_FBTRACE_DISABLE -DDISABLE_COMPRESSION -Wno-missing-field-initializers -Wno-deprecated -W -Wall -Wextra -Wno-unused-parameter -fno-strict-aliasing -g -O2 -o mock_mc_server test/mock_mc_server-MockMc.o test/mock_mc_server-MockMcServer.o -pthread -L/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib -ljemalloc ../../lib/libmcrouter.a -lthriftcpp2 -ltransport -lthriftprotocol -lReactiveSocket -lyarpl -lasync -lconcurrency -lprotocol -lthrift-core -lwangle -lfizz -lsodium -lfolly -ldouble-conversion -lz -lssl -lcrypto -levent -lgflags -lglog -L/usr/lib/x86_64-linux-gnu -lboost_context -lboost_filesystem -lboost_program_options -lboost_system -lboost_regex -lboost_thread -lpthread -ldl -lunwind -lbz2 -llz4 -llzma -lsnappy -lzstd -pthread
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::Layout<apache::thrift::TApplicationException, void>::print(std::ostream&, int) const':
FrozenTApplicationException.cpp:(.text+0x181): undefined reference to `apache::thrift::frozen::LayoutBase::print(std::ostream&, int) const'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::Layout<apache::thrift::TApplicationException, void>::clear()':
FrozenTApplicationException.cpp:(.text+0x1ec): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::LayoutBase::LayoutBase(std::type_index)':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutBaseC2ESt10type_index[_ZN6apache6thrift6frozen10LayoutBaseC5ESt10type_index]+0x13): undefined reference to `vtable for apache::thrift::frozen::LayoutBase'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::LayoutBase::~LayoutBase()':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutBaseD2Ev[_ZN6apache6thrift6frozen10LayoutBaseD5Ev]+0xb): undefined reference to `vtable for apache::thrift::frozen::LayoutBase'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::FieldPosition apache::thrift::frozen::maximizeField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, apache::thrift::frozen::Layout<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, void> >(apache::thrift::frozen::FieldPosition, apache::thrift::frozen::Field<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, apache::thrift::frozen::Layout<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, void> >&)':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen13maximizeFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS8_vEEEENS1_13FieldPositionESB_RNS1_5FieldIT_T0_EE[_ZN6apache6thrift6frozen13maximizeFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS8_vEEEENS1_13FieldPositionESB_RNS1_5FieldIT_T0_EE]+0x8f): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen13maximizeFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS8_vEEEENS1_13FieldPositionESB_RNS1_5FieldIT_T0_EE[_ZN6apache6thrift6frozen13maximizeFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS8_vEEEENS1_13FieldPositionESB_RNS1_5FieldIT_T0_EE]+0xf6): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::FieldPosition apache::thrift::frozen::maximizeField<int, apache::thrift::frozen::Layout<int, void> >(apache::thrift::frozen::FieldPosition, apache::thrift::frozen::Field<int, apache::thrift::frozen::Layout<int, void> >&)':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen13maximizeFieldIiNS1_6LayoutIivEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE[_ZN6apache6thrift6frozen13maximizeFieldIiNS1_6LayoutIivEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE]+0x8f): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen13maximizeFieldIiNS1_6LayoutIivEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE[_ZN6apache6thrift6frozen13maximizeFieldIiNS1_6LayoutIivEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE]+0xf6): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::Field<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, apache::thrift::frozen::Layout<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, void> >::print(std::ostream&, int) const':
FrozenTApplicationException.cpp:(.text._ZNK6apache6thrift6frozen5FieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS8_vEEE5printERSoi[_ZNK6apache6thrift6frozen5FieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS8_vEEE5printERSoi]+0x40): undefined reference to `apache::thrift::frozen::operator<<(std::ostream&, apache::thrift::frozen::DebugLine)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::Field<int, apache::thrift::frozen::Layout<int, void> >::print(std::ostream&, int) const':
FrozenTApplicationException.cpp:(.text._ZNK6apache6thrift6frozen5FieldIiNS1_6LayoutIivEEE5printERSoi[_ZNK6apache6thrift6frozen5FieldIiNS1_6LayoutIivEEE5printERSoi]+0x40): undefined reference to `apache::thrift::frozen::operator<<(std::ostream&, apache::thrift::frozen::DebugLine)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::Field<int, apache::thrift::frozen::Layout<int, void> >::clear()':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen5FieldIiNS1_6LayoutIivEEE5clearEv[_ZN6apache6thrift6frozen5FieldIiNS1_6LayoutIivEEE5clearEv]+0x18): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::FieldPosition apache::thrift::frozen::LayoutRoot::layoutField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, apache::thrift::frozen::Layout<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, void>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(apache::thrift::frozen::LayoutPosition, apache::thrift::frozen::FieldPosition, apache::thrift::frozen::Field<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, apache::thrift::frozen::Layout<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, void> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutRoot11layoutFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS9_vEES9_EENS1_13FieldPositionENS1_14LayoutPositionESC_RNS1_5FieldIT_T0_EERKT1_[_ZN6apache6thrift6frozen10LayoutRoot11layoutFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS9_vEES9_EENS1_13FieldPositionENS1_14LayoutPositionESC_RNS1_5FieldIT_T0_EERKT1_]+0xda): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutRoot11layoutFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS9_vEES9_EENS1_13FieldPositionENS1_14LayoutPositionESC_RNS1_5FieldIT_T0_EERKT1_[_ZN6apache6thrift6frozen10LayoutRoot11layoutFieldINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS1_6LayoutIS9_vEES9_EENS1_13FieldPositionENS1_14LayoutPositionESC_RNS1_5FieldIT_T0_EERKT1_]+0x1a6): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::FieldPosition apache::thrift::frozen::LayoutRoot::layoutField<int, apache::thrift::frozen::Layout<int, void>, int>(apache::thrift::frozen::LayoutPosition, apache::thrift::frozen::FieldPosition, apache::thrift::frozen::Field<int, apache::thrift::frozen::Layout<int, void> >&, int const&)':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutRoot11layoutFieldIiNS1_6LayoutIivEEiEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_[_ZN6apache6thrift6frozen10LayoutRoot11layoutFieldIiNS1_6LayoutIivEEiEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_]+0xda): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutRoot11layoutFieldIiNS1_6LayoutIivEEiEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_[_ZN6apache6thrift6frozen10LayoutRoot11layoutFieldIiNS1_6LayoutIivEEiEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_]+0x1a6): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::detail::StringLayout<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::print(std::ostream&, int) const':
FrozenTApplicationException.cpp:(.text._ZNK6apache6thrift6frozen6detail12StringLayoutINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5printERSoi[_ZNK6apache6thrift6frozen6detail12StringLayoutINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5printERSoi]+0x35): undefined reference to `apache::thrift::frozen::LayoutBase::print(std::ostream&, int) const'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::detail::PackedIntegerLayout<int>::print(std::ostream&, int) const':
FrozenTApplicationException.cpp:(.text._ZNK6apache6thrift6frozen6detail19PackedIntegerLayoutIiE5printERSoi[_ZNK6apache6thrift6frozen6detail19PackedIntegerLayoutIiE5printERSoi]+0x35): undefined reference to `apache::thrift::frozen::LayoutBase::print(std::ostream&, int) const'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::detail::StringLayout<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::clear()':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen6detail12StringLayoutINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5clearEv[_ZN6apache6thrift6frozen6detail12StringLayoutINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5clearEv]+0x14): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::FieldPosition apache::thrift::frozen::maximizeField<unsigned long, apache::thrift::frozen::Layout<unsigned long, void> >(apache::thrift::frozen::FieldPosition, apache::thrift::frozen::Field<unsigned long, apache::thrift::frozen::Layout<unsigned long, void> >&)':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen13maximizeFieldImNS1_6LayoutImvEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE[_ZN6apache6thrift6frozen13maximizeFieldImNS1_6LayoutImvEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE]+0x8f): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen13maximizeFieldImNS1_6LayoutImvEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE[_ZN6apache6thrift6frozen13maximizeFieldImNS1_6LayoutImvEEEENS1_13FieldPositionES5_RNS1_5FieldIT_T0_EE]+0xf6): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::Field<unsigned long, apache::thrift::frozen::Layout<unsigned long, void> >::print(std::ostream&, int) const':
FrozenTApplicationException.cpp:(.text._ZNK6apache6thrift6frozen5FieldImNS1_6LayoutImvEEE5printERSoi[_ZNK6apache6thrift6frozen5FieldImNS1_6LayoutImvEEE5printERSoi]+0x40): undefined reference to `apache::thrift::frozen::operator<<(std::ostream&, apache::thrift::frozen::DebugLine)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::Field<unsigned long, apache::thrift::frozen::Layout<unsigned long, void> >::clear()':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen5FieldImNS1_6LayoutImvEEE5clearEv[_ZN6apache6thrift6frozen5FieldImNS1_6LayoutImvEEE5clearEv]+0x18): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::FieldPosition apache::thrift::frozen::LayoutRoot::layoutField<unsigned long, apache::thrift::frozen::Layout<unsigned long, void>, unsigned long>(apache::thrift::frozen::LayoutPosition, apache::thrift::frozen::FieldPosition, apache::thrift::frozen::Field<unsigned long, apache::thrift::frozen::Layout<unsigned long, void> >&, unsigned long const&)':
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutRoot11layoutFieldImNS1_6LayoutImvEEmEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_[_ZN6apache6thrift6frozen10LayoutRoot11layoutFieldImNS1_6LayoutImvEEmEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_]+0xda): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
FrozenTApplicationException.cpp:(.text._ZN6apache6thrift6frozen10LayoutRoot11layoutFieldImNS1_6LayoutImvEEmEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_[_ZN6apache6thrift6frozen10LayoutRoot11layoutFieldImNS1_6LayoutImvEEmEENS1_13FieldPositionENS1_14LayoutPositionES6_RNS1_5FieldIT_T0_EERKT1_]+0x1a6): undefined reference to `apache::thrift::frozen::LayoutBase::resize(apache::thrift::frozen::FieldPosition, bool)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o): In function `apache::thrift::frozen::detail::PackedIntegerLayout<unsigned long>::print(std::ostream&, int) const':
FrozenTApplicationException.cpp:(.text._ZNK6apache6thrift6frozen6detail19PackedIntegerLayoutImE5printERSoi[_ZNK6apache6thrift6frozen6detail19PackedIntegerLayoutImE5printERSoi]+0x35): undefined reference to `apache::thrift::frozen::LayoutBase::print(std::ostream&, int) const'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTVN6apache6thrift6frozen6LayoutIivEE[_ZTVN6apache6thrift6frozen6LayoutIivEE]+0x20): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTVN6apache6thrift6frozen6detail19PackedIntegerLayoutIiEE[_ZTVN6apache6thrift6frozen6detail19PackedIntegerLayoutIiEE]+0x20): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTVN6apache6thrift6frozen6LayoutImvEE[_ZTVN6apache6thrift6frozen6LayoutImvEE]+0x20): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTVN6apache6thrift6frozen6detail19PackedIntegerLayoutImEE[_ZTVN6apache6thrift6frozen6detail19PackedIntegerLayoutImEE]+0x20): undefined reference to `apache::thrift::frozen::LayoutBase::clear()'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTIN6apache6thrift6frozen6LayoutINS0_21TApplicationExceptionEvEE[_ZTIN6apache6thrift6frozen6LayoutINS0_21TApplicationExceptionEvEE]+0x10): undefined reference to `typeinfo for apache::thrift::frozen::LayoutBase'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTIN6apache6thrift6frozen6detail19PackedIntegerLayoutIiEE[_ZTIN6apache6thrift6frozen6detail19PackedIntegerLayoutIiEE]+0x10): undefined reference to `typeinfo for apache::thrift::frozen::LayoutBase'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTIN6apache6thrift6frozen6detail12StringLayoutINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE[_ZTIN6apache6thrift6frozen6detail12StringLayoutINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE]+0x10): undefined reference to `typeinfo for apache::thrift::frozen::LayoutBase'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(FrozenTApplicationException.cpp.o):(.data.rel.ro._ZTIN6apache6thrift6frozen6detail19PackedIntegerLayoutImEE[_ZTIN6apache6thrift6frozen6detail19PackedIntegerLayoutImEE]+0x10): undefined reference to `typeinfo for apache::thrift::frozen::LayoutBase'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(GeneratedCodeHelper.cpp.o): In function `std::__cxx11::basic_string<fmt::v5::char_t<char [29]>::type, std::char_traits<fmt::v5::char_t<char [29]>::type>, std::allocator<fmt::v5::char_t<char [29]>::type> > fmt::v5::format<char [29], char const*>(char const (&) [29], char const* const&)':
GeneratedCodeHelper.cpp:(.text._ZN3fmt2v56formatIA29_cJPKcEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsISA_ESaISA_EEERKS8_DpRKT0_[_ZN3fmt2v56formatIA29_cJPKcEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsISA_ESaISA_EEERKS8_DpRKT0_]+0x86): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > fmt::v5::internal::vformat<char>(fmt::v5::basic_string_view<char>, fmt::v5::basic_format_args<fmt::v5::buffer_context<char>::type>)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(RocketClient.cpp.o): In function `std::__cxx11::basic_string<fmt::v5::char_t<char [77]>::type, std::char_traits<fmt::v5::char_t<char [77]>::type>, std::allocator<fmt::v5::char_t<char [77]>::type> > fmt::v5::format<char [77], unsigned long, char const*>(char const (&) [77], unsigned long const&, char const* const&)':
RocketClient.cpp:(.text._ZN3fmt2v56formatIA77_cJmPKcEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsISA_ESaISA_EEERKS8_DpRKT0_[_ZN3fmt2v56formatIA77_cJmPKcEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsISA_ESaISA_EEERKS8_DpRKT0_]+0x8b): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > fmt::v5::internal::vformat<char>(fmt::v5::basic_string_view<char>, fmt::v5::basic_format_args<fmt::v5::buffer_context<char>::type>)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(Frames.cpp.o): In function `std::__cxx11::basic_string<fmt::v5::char_t<char [52]>::type, std::char_traits<fmt::v5::char_t<char [52]>::type>, std::allocator<fmt::v5::char_t<char [52]>::type> > fmt::v5::format<char [52], unsigned short, unsigned short>(char const (&) [52], unsigned short const&, unsigned short const&)':
Frames.cpp:(.text._ZN3fmt2v56formatIA52_cJttEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS8_ESaIS8_EEERKS6_DpRKT0_[_ZN3fmt2v56formatIA52_cJttEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS8_ESaIS8_EEERKS6_DpRKT0_]+0x8b): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > fmt::v5::internal::vformat<char>(fmt::v5::basic_string_view<char>, fmt::v5::basic_format_args<fmt::v5::buffer_context<char>::type>)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(RequestContext.cpp.o): In function `std::__cxx11::basic_string<fmt::v5::char_t<char [59]>::type, std::char_traits<fmt::v5::char_t<char [59]>::type>, std::allocator<fmt::v5::char_t<char [59]>::type> > fmt::v5::format<char [59], int, char [23]>(char const (&) [59], int const&, char const (&) [23])':
RequestContext.cpp:(.text._ZN3fmt2v56formatIA59_cJiA23_cEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS9_ESaIS9_EEERKS7_DpRKT0_[_ZN3fmt2v56formatIA59_cJiA23_cEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS9_ESaIS9_EEERKS7_DpRKT0_]+0x8b): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > fmt::v5::internal::vformat<char>(fmt::v5::basic_string_view<char>, fmt::v5::basic_format_args<fmt::v5::buffer_context<char>::type>)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libthriftcpp2.a(RequestContext.cpp.o): In function `std::__cxx11::basic_string<fmt::v5::char_t<char [59]>::type, std::char_traits<fmt::v5::char_t<char [59]>::type>, std::allocator<fmt::v5::char_t<char [59]>::type> > fmt::v5::format<char [59], int, char [16]>(char const (&) [59], int const&, char const (&) [16])':
RequestContext.cpp:(.text._ZN3fmt2v56formatIA59_cJiA16_cEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS9_ESaIS9_EEERKS7_DpRKT0_[_ZN3fmt2v56formatIA59_cJiA16_cEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS9_ESaIS9_EEERKS7_DpRKT0_]+0x8b): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > fmt::v5::internal::vformat<char>(fmt::v5::basic_string_view<char>, fmt::v5::basic_format_args<fmt::v5::buffer_context<char>::type>)'
/home/smukil/mcrouter/mcrouter/mcrouter-install/install/lib/libtransport.a(THeader.cpp.o):THeader.cpp:(.text._ZN3fmt2v56formatIA22_cJtEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS8_ESaIS8_EEERKS6_DpRKT0_[_ZN3fmt2v56formatIA22_cJtEEENSt7__cxx1112basic_stringINS0_6char_tIT_E4typeESt11char_traitsIS8_ESaIS8_EEERKS6_DpRKT0_]+0x86): more undefined references to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > fmt::v5::internal::vformat<char>(fmt::v5::basic_string_view<char>, fmt::v5::basic_format_args<fmt::v5::buffer_context<char>::type>)' follow
collect2: error: ld returned 1 exit status
Makefile:529: recipe for target 'mock_mc_server' failed
make[4]: *** [mock_mc_server] Error 1
make[4]: Leaving directory '/home/smukil/mcrouter/mcrouter/lib/network'
Makefile:637: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/home/smukil/mcrouter/mcrouter/lib/network'
Makefile:2278: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/smukil/mcrouter/mcrouter/lib'
Makefile:1677: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/smukil/mcrouter/mcrouter'
Makefile:710: recipe for target 'all' failed
make: *** [all] Error 2
Any help to move past this issue and get mcrouter built would be appreciated. Also, what compiler version is generally advised on Xenial?
Hi, just checking in to see if anyone has had a chance to look at this?
Pinging again if anyone has any pointers.