[MacPorts] #58719: folly @2019.06.17.00: Undefined symbols

MacPorts noreply at macports.org
Sat Jul 13 22:49:31 UTC 2019


#58719: folly @2019.06.17.00: Undefined symbols
------------------------+--------------------
 Reporter:  ryandesign  |      Owner:  (none)
     Type:  defect      |     Status:  new
 Priority:  Normal      |  Milestone:
Component:  ports       |    Version:
 Keywords:              |       Port:  folly
------------------------+--------------------
 [https://build.macports.org/builders/ports-10.13_x86_64-builder/builds/60353/steps
 /install-port/logs/stdio folly does not build on macOS 10.13 or earlier]:

 {{{
 Undefined symbols for architecture x86_64:
   "folly::dynamic::TypeInfo<folly::dynamic::ObjectImpl>::name", referenced
 from:
       folly::dynamic::operator[](folly::Range<char const*>) & in
 dynamic.cpp.o
       folly::dynamic::getDefault(folly::Range<char const*>, folly::dynamic
 const&) const & in dynamic.cpp.o
       folly::dynamic::getDefault(folly::Range<char const*>,
 folly::dynamic&&) const & in dynamic.cpp.o
       folly::dynamic::getDefault(folly::Range<char const*>, folly::dynamic
 const&) && in dynamic.cpp.o
       folly::dynamic::getDefault(folly::Range<char const*>,
 folly::dynamic&&) && in dynamic.cpp.o
       folly::dynamic::merge_diff(folly::dynamic const&, folly::dynamic
 const&) in dynamic.cpp.o
       std::__1::enable_if<(!(std::is_convertible<folly::dynamic const&,
 folly::Range<char const*> >::value)) &&
 (std::is_convertible<folly::dynamic const&, folly::dynamic>::value),
 folly::dynamic::const_item_iterator>::type
 folly::dynamic::find<folly::dynamic const&>(folly::dynamic const&&&) const
 in dynamic.cpp.o
       ...
   "folly::dynamic::TypeInfo<std::__1::basic_string<char,
 std::__1::char_traits<char>, std::__1::allocator<char> > >::name",
 referenced from:
       folly::jsonschema::(anonymous
 namespace)::SchemaValidator::loadSchema(folly::jsonschema::(anonymous
 namespace)::SchemaValidatorContext&, folly::dynamic const&) in
 JSONSchema.cpp.o
       folly::jsonschema::(anonymous
 namespace)::PropertiesValidator::PropertiesValidator(folly::jsonschema::(anonymous
 namespace)::SchemaValidatorContext&, folly::dynamic const*, folly::dynamic
 const*, folly::dynamic const*) in JSONSchema.cpp.o
       folly::jsonschema::(anonymous
 namespace)::DependencyValidator::DependencyValidator(folly::jsonschema::(anonymous
 namespace)::SchemaValidatorContext&, folly::dynamic const&) in
 JSONSchema.cpp.o
       folly::bser::parseBser(folly::io::Cursor&) in Load.cpp.o
   "folly::dynamic::TypeInfo<std::__1::vector<folly::dynamic,
 std::__1::allocator<folly::dynamic> > >::name", referenced from:
       folly::dynamic::erase(std::__1::__wrap_iter<folly::dynamic const*>,
 std::__1::__wrap_iter<folly::dynamic const*>) in dynamic.cpp.o
       folly::json::(anonymous
 namespace)::Printer::operator()(folly::dynamic const&) const in json.cpp.o
       folly::json::(anonymous
 namespace)::parseValue(folly::json::(anonymous namespace)::Input&,
 std::__1::unordered_map<folly::dynamic const*,
 folly::json::parse_metadata, std::__1::hash<folly::dynamic const*>,
 std::__1::equal_to<folly::dynamic const*>,
 std::__1::allocator<std::__1::pair<folly::dynamic const* const,
 folly::json::parse_metadata> > >*) in json.cpp.o
       folly::(anonymous
 namespace)::do_remove(folly::Expected<folly::dynamic::json_pointer_resolved_value<folly::dynamic>,
 folly::dynamic::json_pointer_resolution_error<folly::dynamic> >&) in
 json_patch.cpp.o
       folly::(anonymous
 namespace)::do_add(folly::Expected<folly::dynamic::json_pointer_resolved_value<folly::dynamic>,
 folly::dynamic::json_pointer_resolution_error<folly::dynamic> >&,
 folly::dynamic const&, std::__1::basic_string<char,
 std::__1::char_traits<char>, std::__1::allocator<char> > const&) in
 json_patch.cpp.o
       folly::jsonschema::(anonymous
 namespace)::ArrayUniqueValidator::validate(folly::jsonschema::(anonymous
 namespace)::ValidationContext&, folly::dynamic const&) const in
 JSONSchema.cpp.o
       folly::jsonschema::(anonymous
 namespace)::DependencyValidator::DependencyValidator(folly::jsonschema::(anonymous
 namespace)::SchemaValidatorContext&, folly::dynamic const&) in
 JSONSchema.cpp.o
       ...
 ld: symbol(s) not found for architecture x86_64
 clang: error: linker command failed with exit code 1 (use -v to see
 invocation)
 }}}

 I also noticed that [e616a815a0672cd42149715ccb8f5753750dafa0/macports-
 ports] specifies that C++14 is required, but the compiler blacklisting was
 not adjusted to take that into account. For C++14 we usually add `compiler
 .blacklist-append {clang < 602}`.

-- 
Ticket URL: <https://trac.macports.org/ticket/58719>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list