[MacPorts] #31171: building gcc46 on osx lion fails

MacPorts noreply at macports.org
Sat Nov 19 14:46:37 PST 2011


#31171: building gcc46 on osx lion fails
------------------------------+---------------------------------------------
 Reporter:  okpail@…          |       Owner:  mww@…           
     Type:  defect            |      Status:  new             
 Priority:  Normal            |   Milestone:                  
Component:  ports             |     Version:                  
 Keywords:                    |        Port:  gcc46           
------------------------------+---------------------------------------------

Comment(by Kona8lend@…):

 as per dports comments about --enable-fully-dynamic-string see new patch
 http://trac.macports.org/attachment/ticket/31171/gcc46-darwin11-no-
 fds.diff

 This approach seems to make gcc46's new libstdc++ ABI compatible once
 again with /usr/lib/libstdc++.6.dylib, thus negating any need to delve
 into gcc46 sources and block dangerous points of DYLD_LIBRARY_PATH
 propagation (as my first patch gcc46-ld does). It's cleaner and more
 future proof.

 It appears the initial reasoning for --enable-fully-dynamic-string in
 r67282 (gcc44), r68780 (gcc45), r68778 (gcc46) was incorrect. Examining
 libstdcxx from http://opensource.apple.com for both Snow Leopard and Lion
 do not show this option enabled. Nor do the headers. Headers bundled with
 Xcode 4.2 in both 10.6 and 10.7 SDKs are also consistent: the feature is
 not enabled.

 A deeper search as to why #22234 requested the option implicates use of
 _GLIBCXX_DEBUG, and that's a whole other can of worms. Sufficed to say,
 _GLIBCXX_DEBUG has some history of being wonky with bundled libstdc++ on
 OSX and it's possible this became a red herring. I am able to build #22234
 souce with llvm-g++-4.2, g++-apple-4.2, g++-mp-4.5, g++-mp-4.6 with -O0,
 -O1, -O2, -O3, -Os on Lion Xcode 4.2 and it is not fatal. Additionally
 another regex test program posted by the same author, similar issue, and
 it is works fine.

 So I'd like to conclude that unless we have concrete evidence that Apple's
 libstdc++ was built with --enable-fully-dynamic-string, I think we should
 not build any gcc/libstdc++ with that option by default.

 Standard disclaimer: my testing is on Lion.

-- 
Ticket URL: <https://trac.macports.org/ticket/31171#comment:39>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list