
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 https://svn.boost.org/trac/boost/ticket/3847 https://svn.boost.org/trac/boost/ticket/3882 https://svn.boost.org/trac/boost/ticket/4614 https://svn.boost.org/trac/boost/ticket/4632 https://svn.boost.org/trac/boost/ticket/4258 https://svn.boost.org/trac/boost/ticket/4736 A few of these are related or similiar in nature. Long story short, Boost.Thread has some rather serious issues on mingw. One report indicates that statically linking Boost.Thread with VC8 and VC10 is broken. These are quite serious. The library maintainers have not responded to any of these tickets. The mingw problems are reproducible for me, the supposed VC problem appears to work for me. - -- Bryce Lelbach aka wash http://groups.google.com/group/ariel_devel -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkzAlJEACgkQO/fqqIuE2t65YQCeNKpTO1+9IdAGleAPY+3XFIeC wIQAoImdTt1vpQjvxc0+hJ4jyQ9G9QaA =vck0 -----END PGP SIGNATURE-----

Bryce Lelbach <admin@thefireflyproject.us> writes:
https://svn.boost.org/trac/boost/ticket/3847 https://svn.boost.org/trac/boost/ticket/3882 https://svn.boost.org/trac/boost/ticket/4614 https://svn.boost.org/trac/boost/ticket/4632 https://svn.boost.org/trac/boost/ticket/4258 https://svn.boost.org/trac/boost/ticket/4736
A few of these are related or similiar in nature. Long story short, Boost.Thread has some rather serious issues on mingw. One report indicates that statically linking Boost.Thread with VC8 and VC10 is broken.
I intend to look at these tomorrow. I haven't touched mingw in a while, and the recent mingw releases appear to have changed the way things work. I have not encountered any problems with static linking with MSVC, but I will see if I can reproduce the problems. Anthony -- Author of C++ Concurrency in Action http://www.stdthread.co.uk/book/ just::thread C++0x thread library http://www.stdthread.co.uk Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk 15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK. Company No. 5478976

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Thu, 21 Oct 2010 23:41:46 +0100 Anthony Williams <anthony.ajw@gmail.com> wrote:
Bryce Lelbach <admin@thefireflyproject.us> writes:
https://svn.boost.org/trac/boost/ticket/3847 https://svn.boost.org/trac/boost/ticket/3882 https://svn.boost.org/trac/boost/ticket/4614 https://svn.boost.org/trac/boost/ticket/4632 https://svn.boost.org/trac/boost/ticket/4258 https://svn.boost.org/trac/boost/ticket/4736
A few of these are related or similiar in nature. Long story short, Boost.Thread has some rather serious issues on mingw. One report indicates that statically linking Boost.Thread with VC8 and VC10 is broken.
I intend to look at these tomorrow. I haven't touched mingw in a while, and the recent mingw releases appear to have changed the way things work. I have not encountered any problems with static linking with MSVC, but I will see if I can reproduce the problems.
Anthony
Hey Anthony. I've been unable to produce the MSVC problem, too. I think the issue is just with mingw. - -- Bryce Lelbach aka wash http://groups.google.com/group/ariel_devel -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYFAkzAxLIACgkQO/fqqIuE2t7GCwCgqROYzeFq522aKqrGDoQJ4SaI KpEAoO6Jznw/LawWlte88yqI/rZqqRg7 =nKdX -----END PGP SIGNATURE-----

Boost.Thread has some rather serious issues on mingw. One report indicates that statically linking Boost.Thread with VC8 and VC10 is broken.
I intend to look at these tomorrow. I haven't touched mingw in a while, and the recent mingw releases appear to have changed the way things work. I have not encountered any problems with static linking with MSVC, but I will see if I can reproduce the problems.
Anthony
Hey Anthony. I've been unable to produce the MSVC problem, too. I think the issue is just with mingw. We use Boost.Thread 1.43 on MSVC 2008 and haven't seen any issues. Erik ---------------------------------------------------------------------- This message w/attachments (message) is intended solely for the use of the intended recipient(s) and may contain information that is privileged, confidential or proprietary. If you are not an intended recipient, please notify the sender, and then please delete and destroy all copies and attachments, and be advised that any review or dissemination of, or the taking of any action in reliance on, the information contained in or attached to this message is prohibited. Unless specifically indicated, this message is not an offer to sell or a solicitation of any investment products or other financial product or service, an official confirmation of any transaction, or an official statement of Sender. Subject to applicable law, Sender may intercept, monitor, review and retain e-communications (EC) traveling through its networks/systems and may produce any such EC to regulators, law enforcement, in litigation and as required by law. The laws of the country of each sender/recipient may impact the handling of EC, and EC may be archived, supervised and produced in countries other than the country in which you are located. This message cannot be guaranteed to be secure or free of errors or viruses. References to "Sender" are references to any subsidiary of Bank of America Corporation. Securities and Insurance Products: * Are Not FDIC Insured * Are Not Bank Guaranteed * May Lose Value * Are Not a Bank Deposit * Are Not a Condition to Any Banking Service or Activity * Are Not Insured by Any Federal Government Agency. Attachments that are part of this EC may have additional important disclosures and disclaimers, which you should read. This message is subject to terms available at the following link: http://www.bankofamerica.com/emaildisclaimer. By messaging with Sender you consent to the foregoing.

On 1:59 PM, Nelson, Erik - 2 wrote:
Boost.Thread has some rather serious issues on mingw. [...] I intend to look at these tomorrow. I haven't touched mingw in a while, and the recent mingw releases appear to have changed the way things work. I have not encountered any problems with static linking with MSVC, but I will see if I can reproduce the problems.
Anthony Hey Anthony. I've been unable to produce the MSVC problem, too. I think the issue is just with mingw.
I think the current wave/testwave trunk regression test for MinGW illustrates thread's linking issues (or one of them). It links with static libraries. The link fails looking for two undefined symbols: _imp___ZN5boost6detail12get_tss_dataEPKv _imp___ZN5boost6detail12set_tss_dataEPKvNS_10shared_ptrINS0_20tss_cleanup_functionEEEPvb These are the dllimport symbols for: boost::detail::get_tss_data(void const*) boost::detail::set_tss_data(void const*, boost::shared_ptr<boost::detail::tss_cleanup_function>, void*, bool) The errors are coming from libboost_wave, not the (test) source. So that library appears to have been compiled incorrectly. The test was compiled with: -DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_THREAD_USE_LIB=1 -DDATE_TIME_INLINE But the library was compiled with just -DBOOST_ALL_NO_LIB=1 And these two export symbols are in thread's static library (but not with dllimport's 'imp' prefix). Should all static libraries be built with -DBOOST_THREAD_USE_LIB, or should BOOST_ALL_NO_LIB or other flags automatically define it? (Or is this specific test build configured wrong?)
We use Boost.Thread 1.43 on MSVC 2008 and haven't seen any issues.
[...]

Boost.Thread has some rather serious issues on mingw. [...] I intend to look at these tomorrow. I haven't touched mingw in a while, and the recent mingw releases appear to have changed the way things work. I have not encountered any problems with static linking with MSVC, but I will see if I can reproduce the problems.
Anthony Hey Anthony. I've been unable to produce the MSVC problem, too. I think the issue is just with mingw.
I think the current wave/testwave trunk regression test for MinGW illustrates thread's linking issues (or one of them). It links with static libraries.
The link fails looking for two undefined symbols: _imp___ZN5boost6detail12get_tss_dataEPKv
_imp___ZN5boost6detail12set_tss_dataEPKvNS_10shared_ptrINS0_20tss_cleanup_ functionEEEPvb
These are the dllimport symbols for: boost::detail::get_tss_data(void const*) boost::detail::set_tss_data(void const*, boost::shared_ptr<boost::detail::tss_cleanup_function>, void*, bool)
The errors are coming from libboost_wave, not the (test) source. So that library appears to have been compiled incorrectly.
The test was compiled with: -DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_THREAD_USE_LIB=1 - DDATE_TIME_INLINE
But the library was compiled with just -DBOOST_ALL_NO_LIB=1
And these two export symbols are in thread's static library (but not with dllimport's 'imp' prefix).
Should all static libraries be built with -DBOOST_THREAD_USE_LIB, or should BOOST_ALL_NO_LIB or other flags automatically define it? (Or is this specific test build configured wrong?)
The Wave tests do nothing specific except having '<link>static' requirements for the static linking tests. Please correct me if I'm wrong, but I don't believe the tests to be wrongly configured. Regards Hartmut --------------- http://boost-spirit.com

On 1:59 PM, Hartmut Kaiser wrote:
Boost.Thread has some rather serious issues on mingw. [...] I intend to look at these tomorrow. I haven't touched mingw in a while, and the recent mingw releases appear to have changed the way things work. I have not encountered any problems with static linking with MSVC, but I will see if I can reproduce the problems.
Anthony Hey Anthony. I've been unable to produce the MSVC problem, too. I think the issue is just with mingw. I think the current wave/testwave trunk regression test for MinGW illustrates thread's linking issues (or one of them). It links with static libraries.
The link fails ... The Wave tests do nothing specific except having '<link>static' requirements for the static linking tests. Please correct me if I'm wrong, but I don't believe the tests to be wrongly configured.
I think that's the crux of the issue here: the test ISN'T wrongly configured, but the library build MIGHT be, and it's not clear to anyone whether or not it is. And there's no immediate & authoritative feed-back (i.e., compile, link errors) declaring it so.

Hi, I've looked at the thread issues, and fixed those I can on trunk. I'm going to be away until 28th October, so anything else will have to wait until then. Anthony -- Author of C++ Concurrency in Action http://www.stdthread.co.uk/book/ just::thread C++0x thread library http://www.stdthread.co.uk Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk 15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK. Company No. 5478976
participants (6)
-
Anthony Williams
-
Bryce Lelbach
-
Hartmut Kaiser
-
Jim Bell
-
Nelson, Erik - 2
-
Richard Webb