From: Michal Suchanek Date: 2009-08-24T21:33:34+09:00 Subject: [ruby-core:25088] Re: [Bug #1991] ruby should use twolevel namespace on OS X 2009/8/24 Shyouhei Urabe : > Issue #1991 has been updated by Shyouhei Urabe. > > > Remember, 1.8.6 was released in May 2007, which is before-Leopard ara. ��As far as I know there was no problems on flat namespaces then. Sorry, I don't know what leopard stands for. It's hard enough to remember the numbers. Either way twolevel namespace is available for quite some time on OS X. According to ld(1) man page flat namespace was the default only on 10.0 and ever since twolevel should be available as it is the default. However, since 10.3 it is possible to use dynamic lookup for libraries which means that extensions can be built even with undefined symbols. Previously you had to link dynamic object properly so that all symbols are defined which might have prevented some sloppy extensions from building. iirc I was building twolevel on 10.2 as well which required that the extensions were built properly or failed rather than installing and failing to load. Thanks Michal