DMD via MacPorts has a problem

Russel Winder russel at winder.org.uk
Tue Mar 4 06:29:23 PST 2014


On Tue, 2014-03-04 at 09:23 +0900, Takeshi Enomoto wrote:
[…]
> I updated dmd, druntime, phobos, dmd-doc and dmd-tools to 2.065.0
> and have just committed the changes.

Sponditious.

They work for me fine on a MBP with OSX Mavericks.

However on a white MB with OSX Lion (*) the install of DMD fails. The
problem appears to be that Clang cannot link the object files since the
object files are not built for x86 architecture – despite the processor
being 64-bit, the boot prom is 32-bit and so OSX is 32-bit and reports
the processor to be 32-bit, unlike the processor which knows it's 64-bit
and reports so. As far as I can tell (log files are huge due to the huge
numbers of warnings about expressions) all the clang++ lines have
-DDM_TARGET_CPU_X86, so I am somewhat surprised. Of course I am really a
Linux person being forced to set up OSX boxes for testing…

> While updating Portfiles, I tried to build a shared library of druntime.
> It turned out that I can't do so because druntime-2.065/src/rt/sections.d
> line 48
> 
>         static assert(is(typeof(&pinLoadedLibraries) == void* function()));
> 
> returns an error and a dylib is not created.
> This is because pinLoadedLibraries() is not defined in rt.sections_osx.d.
> 
> I suggest to ask dmd developers to support shared libraries on OS X.

I think this is a core problem for D in general: everyone needs or wants
shared libraries, but…



(*) Apple refuse to allow any upgrade of this hardware to OSX Mountain
Lion or OSX Mavericks, so I am stuck with OSX Lion.

-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder at ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder



More information about the Digitalmars-d mailing list