[MacPorts] #42496: boost::thread join() crashes under Mountain Lion when linked against libc++ (was: boost::thread join() crashes under Mountain Lion.)

MacPorts noreply at macports.org
Thu Feb 13 09:53:37 PST 2014


#42496: boost::thread join() crashes under Mountain Lion when linked against libc++
--------------------------+--------------------------------
  Reporter:  trojanfoe@…  |      Owner:  macports-tickets@…
      Type:  defect       |     Status:  closed
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:  2.2.1
Resolution:  wontfix      |   Keywords:
      Port:  boost        |
--------------------------+--------------------------------
Changes (by cal@…):

 * status:  new => closed
 * resolution:   => wontfix


Comment:

 You must use the same standard library implementation used by boost when
 compiling your own executables. On Mountain Lion, MacPorts builds boost
 against libstdc++ (which is the default on this OS). If you use this
 version of boost in an executable compiled with `clang++ -std=c++11
 -stdlib=libc++` the generated executable will link against both
 `/usr/lib/libc++.1.dylib` and `/usr/lib/libstdc++.6.dylib` which
 '''will''' lead to undefined behavior and crashes, as you have seen.

 If you want to use C++11 on Mountain Lion, you'll have to compile boost
 against libc++ on your own. See also
 https://lists.macosforge.org/pipermail/macports-
 dev/2013-December/025360.html which describes the issue in more detail and
 outlines possible solutions (none of which have been implemented in
 MacPorts due to lack of manpower).

-- 
Ticket URL: <https://trac.macports.org/ticket/42496#comment:2>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list