Boost C++ Libraries: Ticket #4778: Wave fails to link on win32 & possibly others https://svn.boost.org/trac10/ticket/4778 <p> On platforms where imported symbols are named differently than exported symbols (notably Win32 for gcc &amp; msvc), the wave static library builds incorrectly. </p> <p> Analysis <a class="ext-link" href="http://lists.boost.org/Archives/boost/2010/10/172366.php"><span class="icon">​</span>here</a> (more <a class="ext-link" href="http://lists.boost.org/Archives/boost/2010/10/172371.php"><span class="icon">​</span>here</a>). </p> <p> Note the trunk regression test matrix (live as of 2010/10/23): with the attached patch, the MinGW-32 testwave test passes where the (un-patched) RW_Mingw45 one fails. </p> <p> The patch simply builds the static wave library with BOOST_THREAD_USE_LIB=1, as you can see. </p> <p> It's reasonable to think that BOOST_THREAD_USE_LIB isn't sufficiently documented, and should default to true. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/4778 Trac 1.4.3 Jim Bell <jim@…> Sat, 23 Oct 2010 19:52:37 GMT attachment set https://svn.boost.org/trac10/ticket/4778 https://svn.boost.org/trac10/ticket/4778 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">wave_link_jam_fix.patch</span> </li> </ul> Ticket Hartmut Kaiser Sat, 23 Oct 2010 21:09:45 GMT <link>https://svn.boost.org/trac10/ticket/4778#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/4778#comment:1</guid> <description> <p> The attached patch changes the wrong test case, I believe. The Wave tests are generated twice, once for dynamically linked Boost libraries and once for the statically linked ones. While the patch changes the test tests based on the dynamic libraries. Also, without having this patch applied the MingW-32 test pass just fine. What do I miss here? </p> </description> <category>Ticket</category> </item> <item> <author>Jim Bell <jim@…></author> <pubDate>Sun, 24 Oct 2010 00:18:45 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/4778#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/4778#comment:2</guid> <description> <p> From the <a href="http://www.boost.org/development/tests/trunk/developer/wave.html">trunk wave regression page</a> (as of 2010/10/23 -- right now), testwave (not testwave_dll): </p> <p> The MinGW-32 jc-bell.com test has the patch applied. It passes. (I applied it.) </p> <p> The RW_Mingw45 tests don't have the patch applied. They fail. </p> <p> The test changes the build for the static library, which is required to pass the test. </p> <p> The testwave_dll test appears to be disabled all platforms except msvc8 and higher, which makes sense. I think it should be enabled for all Windows platforms, since it seems appropriate for MinGW. </p> </description> <category>Ticket</category> </item> <item> <author>Jim Bell <jim@…></author> <pubDate>Sun, 24 Oct 2010 00:24:47 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/4778#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/4778#comment:3</guid> <description> <p> The mgw44 jc-bell.com test from a week ago (Sat, 16 Oct 2010) is old. And failed. Patch wasn't applied. The "MinGW-32 jc-bell.com" test is three columns left of RW_Mingw45. </p> </description> <category>Ticket</category> </item> <item> <author>Jim Bell <jim@…></author> <pubDate>Mon, 25 Oct 2010 09:56:43 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/4778#comment:4 https://svn.boost.org/trac10/ticket/4778#comment:4 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> Reverted my patch. Regression test works. </p> Ticket