On 05/10/2021 17:29, Ken Brown via Cygwin-apps wrote:
The current setup sources fail to build because ~StringChoiceOption is
not defined:
CXXLD setup.exe
/usr/lib/gcc/x86_64-w64-mingw32/11/../../../../x86_64-w64-mingw32/bin/ld: io_stream_cygfile.o:/home/kbrown/src/cygsetup/x86_64/../setup/io_stream_cygfile.cc:40:
undefined reference to `StringChoiceOption::~StringChoiceOption()'
/usr/lib/gcc/x86_64-w64-mingw32/11/../../../../x86_64-w64-mingw32/bin/ld: io_stream_cygfile.o:/home/kbrown/src/cygsetup/x86_64/../setup/io_stream_cygfile.cc:43:
undefined reference to
`StringChoiceOption::StringChoiceOption(std::vector<std::pair<char
const*, int>, std::allocator<std::pair<char const*, int> > >, char, char
const*, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, bool, int, int)'
/usr/lib/gcc/x86_64-w64-mingw32/11/../../../../x86_64-w64-mingw32/bin/ld: main.o:/home/kbrown/src/cygsetup/x86_64/../setup/main.cc:107:
undefined reference to `StringChoiceOption::~StringChoiceOption()'
/usr/lib/gcc/x86_64-w64-mingw32/11/../../../../x86_64-w64-mingw32/bin/ld: main.o:/home/kbrown/src/cygsetup/x86_64/../setup/main.cc:107:
undefined reference to
`StringChoiceOption::StringChoiceOption(std::vector<std::pair<char
const*, int>, std::allocator<std::pair<char const*, int> > >, char, char
const*, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, bool, int, int)'
collect2: error: ld returned 1 exit status
You need to autoreconf in the libgetopt++ subdir (the simplest way is
just to re-run the top-level bootstrap.sh script)
I'm not sure why the necessary autofoolery doesn't happen automatically.