Bug 243614 - games/bastet: Fails to build on FreeBSD 12.1-RELEASE-p1 powerpc 32 bit: Config.cpp:(.text+0x22dc): undefined reference to `boost::program_options::options_description
Summary: games/bastet: Fails to build on FreeBSD 12.1-RELEASE-p1 powerpc 32 bit: Confi...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: powerpc Any
: --- Affects Only Me
Assignee: Piotr Kubaj
Depends on:
Reported: 2020-01-26 13:39 UTC by canardo
Modified: 2020-01-31 15:50 UTC (History)
4 users (show)

See Also:
w.schwarzenfeld: maintainer-feedback? (amdmi3)

FreeBSD.bug.bastet-build.successful (6.22 KB, text/plain)
2020-01-30 09:31 UTC, canardo
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description canardo 2020-01-26 13:39:17 UTC
Problem found when building games/bastet on FreeBSD 12.1-RELEASE-p1 powerpc 32 bit, running on Apple Powerbook 17".

/usr/ports/games/bastet # make -DBATCH install clean
===>  Building for bastet-0.43.2_1
gmake[1]: Entering directory '/usr/ports/games/bastet/work/bastet-0.43.2'
c++ -o bastet Ui.o Block.o Well.o BlockPosition.o Config.o BlockChooser.o BastetBlockChooser.o main.o  -Wl,-rpath=/usr/local/lib -fstack-protector-strong -L/usr/local/lib  -lncurses -lboost_program_options 
Config.o: In function `Bastet::Config::Config()':
Config.cpp:(.text+0x22dc): undefined reference to `boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)'
Config.cpp:(.text+0x2484): undefined reference to `boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)'
/usr/local/lib/libboost_program_options.so: undefined reference to `std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_replace(unsigned int, unsigned int, wchar_t const*, unsigned int)@GLIBCXX_3.4.21'
/usr/local/lib/libboost_program_options.so: undefined reference to `std::basic_istream<wchar_t, std::char_traits<wchar_t> >& std::getline<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >(std::basic_istream<wchar_t, std::char_traits<wchar_t> >&, std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >&, wchar_t)@GLIBCXX_3.4.21'
/usr/local/lib/libboost_program_options.so: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_stringstream()@GLIBCXX_3.4.21'
gmake[1]: *** [Makefile:18: bastet] Error 1
gmake[1]: Leaving directory '/usr/ports/games/bastet/work/bastet-0.43.2'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

make: stopped in /usr/ports/games/bastet
Comment 1 Dmitry Marakasov freebsd_committer 2020-01-28 21:17:02 UTC
Does adding "compiler:c++14-lang" to USES help?
Comment 2 canardo 2020-01-29 21:18:31 UTC
(In reply to Dmitry Marakasov from comment #1)

Can you give me the exact command line to use please ?
(I'm no developer and a bit lost with GCC options)
Comment 3 Walter Schwarzenfeld freebsd_triage 2020-01-29 22:16:19 UTC
Change in the Makefile the line

USES=           gmake localbase:ldflags ncurses tar:tgz


USES=           compiler:c++14-lang gmake localbase:ldflags ncurses tar:tgz
Comment 4 canardo 2020-01-30 09:30:40 UTC
(In reply to Walter Schwarzenfeld from comment #3)

Following modification of Makefile, build is now successful (with 2 compilations warning).
See log attached.
Comment 5 canardo 2020-01-30 09:31:19 UTC
Created attachment 211185 [details]
Comment 6 Piotr Kubaj freebsd_committer 2020-01-31 15:50:29 UTC
Fixed in 524717.