dmd not building with dmd

Steven Schveighoffer via Digitalmars-d digitalmars-d at puremagic.com
Sun May 8 02:35:41 PDT 2016


On 5/8/16 9:18 AM, Walter Bright wrote:
> On 5/7/2016 11:43 PM, Steven Schveighoffer wrote:
>> I went to create a PR, and did a git pull on all my repositories.
>> After make
>> clean on OSX, dmd would not build:
>>
>> /Applications/Xcode.app/Contents/Developer/usr/bin/make -C src -f
>> posix.mak
>> no cpu specified, assuming X86
>> CC=c++ dmd idgen.d
>> Undefined symbols for architecture x86_64:
>>   "__Unwind_GetIPInfo", referenced from:
>>       ___dmd_personality_v0 in libphobos2.a(dwarfeh_5c8_811.o)
>> ld: symbol(s) not found for architecture x86_64
>> clang: error: linker command failed with exit code 1 (use -v to see
>> invocation)
>>
>> I had to revert to dmd 2.070 as the build tool to get it to build.
>>
>> My question is: is this expected behavior, or should I file a bug?
>>
>> -Steve
>
> __dmd_personality_v0 is in druntime\src\rt\dwarfeh.d, and was added
> rather recently. So it seems you have a dmd-phobos mismatch.

I don't know what I'm doing wrong:

Stevens-MacBook-Pro:dmd steves$ dmd --version
DMD64 D Compiler v2.071.0
Copyright (c) 1999-2015 by Digital Mars written by Walter Bright
Stevens-MacBook-Pro:dmd steves$ type dmd
dmd is hashed (/Users/steves/.dvm/compilers/dmd-2.071.0/osx/bin/dmd)

I'm using dvm to install dmd, so I'm very sure it should work, I don't 
know if I have strange files somewhere?

If I build idgen manually and continue building, it fails again, this 
time with c++ compiler:

Stevens-MacBook-Pro:dmd steves$ cd src
Stevens-MacBook-Pro:src steves$ dmd idgen.d
Stevens-MacBook-Pro:src steves$ cd ..
Stevens-MacBook-Pro:dmd steves$ make -f posix.mak
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C src -f posix.mak
no cpu specified, assuming X86
   (CC)  ROOT_OBJS  root/newdelete.c
c++ -c -Wno-deprecated -Wstrict-aliasing -Wno-logical-op-parentheses 
-Wno-dynamic-class-memaccess -Wno-switch -fno-exceptions -fno-rtti 
-D__pascal= -DMARS=1 -DTARGET_OSX=1 -DDM_TARGET_CPU_X86=1 -m64 -Iroot 
-MMD -MF newdelete.deps root/newdelete.c
   (CC)  GLUE_OBJS  glue.c
c++ -c -Wno-deprecated -Wstrict-aliasing -Wno-logical-op-parentheses 
-Wno-dynamic-class-memaccess -Wno-switch -fno-exceptions -fno-rtti 
-D__pascal= -DMARS=1 -DTARGET_OSX=1 -DDM_TARGET_CPU_X86=1 -m64 -Iroot 
-Itk -Ibackend -MMD -MF glue.deps glue.c
glue.c:26:10: fatal error: 'id.h' file not found
#include "id.h"
          ^
1 error generated.
make[1]: *** [glue.o] Error 1
make: *** [all] Error 2

Does this give any more clues?

-Steve


More information about the Digitalmars-d mailing list