Subject: Re: [boost] Boost.DLL formal review is ongoing
From: Paul A. Bristow (pbristow_at_[hidden])
Date: 2015-07-14 06:53:11
> -----Original Message-----
> From: Boost [mailto:boost-bounces_at_[hidden]] On Behalf Of William Gallafent
> Sent: 14 July 2015 11:10
> To: boost_at_[hidden]
> Subject: Re: [boost] Boost.DLL formal review is ongoing
> On 13 July 2015 at 21:24, Antony Polukhin <antoshkka_at_[hidden]> wrote:
> > I was trying to keep namings platform neutral: "dynamic library" is
> > too Windows specific, "shared object" is too POSIX specific... Let it
> > bee DLL for library abbreviation and "shared object" mostly in docs
> > and source codes.
> On Mac OS, the files in question are generally named âlibSomething.dylibâ, whereas on Windows the
> equivalent file would be âsomething.dllâ. That seems to directly contradict your assertion that
> âdynamic libraryâ is more Windows-specific, since âdylibâ looks more like a contraction of that phrase
> than âdllâ to me.
> More generally, and fwiw, in my mind I connect âDLLâ very tightly to Windows, to the extent that if
> somebody says âDLLâ I think âwe're talking about something which is exclusively related to Windowsâ.
> I tend to use instead the term âshared libraryâ when referring to these files in a platform-neutral way
> (in other words, when I say âshared libraryâ I mean .dll on Windows, .dylib on Mac OS, and .so on
> Linux, for example). In that way (none of these platforms uses a contraction of âshared libraryâ as its
> way of visually identifying these files in the filesystem) I try to separate cross-platform discussion from
> platform-specific discussion. To me, âshared objectâ feels, as you say, very POSIX-specific.
> By way of comparison, the âfileâ utility on this Mac OS machine returns, for example,
> â/opt/local/lib/libgtk-3.0.dylib: Mach-O 64-bit dynamically linked shared library x86_64â. A similar
> example on Ubuntu
> Linux: â/lib/libfuse.so.2.8.6: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked,
> BuildID[sha1]=0x8776ddf840d71df11e0f99388074338a4dbc05c7, strippedâ.
> Finally, on Windows I see of course
> â/cygdrive/c/Windows/System32/ntdll.dll: PE32+ executable (DLL)
> (console) x86-64, for MS Windowsâ.
> There is in fact no /shared/ nomenclature between all three at all there (because DLLs /are/
> executables on Windows!). Something which has the right connotations but which isn't the
> terminology returned by that utility, or used as a filesystem contraction, for any specific platform
> seems ideal.
Of course - but Bill clearly demonstrates that there is no perfect answer to this. Any new 'portable' term would just confuse everyone!
But DLL is short and sweet, and a glance at the documentation will reveal that the library is *not* Windows specific. Perhaps it stands for Dynamic Linked-things Loader?
--- Paul A. Bristow Prizet Farmhouse Kendal UK LA8 8AB +44 (0) 1539 561830 > Apologies for the fact that my comments are purely in the area of nomenclature! Ditto.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk