Opened 4 weeks ago

#59674 assigned defect

nco build fails because antlr needs rebuild with libc++

Reported by: ryandesign (Ryan Schmidt) Owned by: tenomoto (Takeshi Enomoto)
Priority: Normal Milestone:
Component: ports Version: 2.6.2
Keywords: snowleopard lion mountainlion Cc: jmroot (Joshua Root)
Port: nco antlr


nco fails to build on 10.7. There are undefined symbol errors relating to antlr:

Undefined symbols for architecture x86_64:
  "antlr::ASTFactory::create(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
      ncoParser::statement() in ncoParser.o
      ncoParser::block() in ncoParser.o
      ncoParser::lmt() in ncoParser.o
      ncoParser::lmt_list() in ncoParser.o
      ncoParser::dmn_list_p() in ncoParser.o
      ncoParser::dmn_list() in ncoParser.o
      ncoParser::dmn_arg_list() in ncoParser.o
  "antlr::CharBuffer::CharBuffer(std::__1::basic_istream<char, std::__1::char_traits<char> >&)", referenced from:
      ncoLexer::ncoLexer(std::__1::basic_istream<char, std::__1::char_traits<char> >&, prs_cls*) in Invoke.o
      ncoLexer::ncoLexer(std::__1::basic_istream<char, std::__1::char_traits<char> >&) in ncoLexer.o
      ncoLexer::ncoLexer(std::__1::basic_istream<char, std::__1::char_traits<char> >&, prs_cls*) in ncoLexer.o

I assume the problem is that nco is trying to link with libantlr, which is a static library. It was built back when libstdc++ was the default C++ standard library for MacPorts for 10.6-10.8, and now that we've switched to libc++ for 10.6-10.8, we need to rebuild antlr by increasing its revision. Do you agree?

Change History (0)

Note: See TracTickets for help on using tickets.