Building druntime on MAC OS X
Jacob Carlborg
doob at me.com
Sat Nov 16 08:48:11 PST 2013
On 2013-11-16 16:39, Andrew Edwards wrote:
> You nailed it. It is in the dmd.conf file. Its content is this:
>
> [Environment]
> DFLAGS=-L--export-dynamic -I%@P%/../import -L-L%@P%/../lib -L-lrt
>
> It is generated automatically from src/dmd.conf.default while building
> dmd as such:
>
> make -f posix.mak install
I see. I have never used "install" for DMD before. dmd.conf shipping in
the zip does not have -L--export-dynamic.
> Here is the explanation from man ld of the Mac OS X equivalent:
>
> -export_dynamic
> Preserves all global symbols in main executables during LTO.
> Without this option, Link Time Optimization is allowed to
> inline and remove global functions. This option is used when
> a main executable may load a plug-in which requires certain
> symbols from the main executable.
>
> Not sure what -lrt is thought. It is not defined in the man pages, does
> not affect building of the libraries (druntime or phobos) but bombs out
> while building the tools.
It's liking with the "rt" library. That is, librt.dylib or librt.a. This
is neither used on Mac OS X. I'm guessing "make -f posix.mak install"
will generate a dmd.conf file for Linux.
--
/Jacob Carlborg
More information about the Digitalmars-d
mailing list