Without trying immediately to give specific code for what is a large 
project, I am getting linker errors when trying to link a second shared 
library which depends on a first shared library that has linked 
successfully. The errors are:

xml_wgrammar.o:xml_wgrammar.cpp:(.rdata$_ZTVN5boost7archive21xml_archive_exceptionE[__ZTVN5boost7archive21xml_archive_exceptionE]+0x20):
 
undefined reference to `virtual thunk to 
boost::archive::archive_exception::what() const'
xml_wgrammar.o:xml_wgrammar.cpp:(.rdata$_ZTCN5boost7archive21xml_archive_exceptionE4_NS0_17archive_exceptionE[__ZTCN5boost7archive21xml_archive_exceptionE4_NS0_17archive_exceptionE]+0x38):
 
undefined reference to `virtual thunk to 
boost::archive::archive_exception::what() const'
collect2.exe: error: ld returned 1 exit status

The xml_wgrammar.o file is being linked into the second shared library. 
The xml_wgrammar.cpp file includes xml_archive_exception.hpp. The 
xml_archive_exception.hpp includes and derives from 
archive_exception.hpp. Both xml_archive_exception and archive_exception 
have their implementation in the first shared library and have their 
necessary implementations exported. The implementation of 
archive_exception::what() is exported in the first shared library and is 
imported when seen by xml_wgrammar.cpp.

What is so strange is that there is no call to archive_exception::what() 
in the preprocessed output of xml_wgrammar.cpp.

Does anybody have any idea what might be going on here before I take the 
time to reduce this situation into a short enough fragment to show in a 
subsequent thread in this post ?


------------------------------------------------------------------------------
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to