Forking phobos

Aleksandar Ružičić ruzicic.aleksandar at gmail.com
Sun Apr 3 14:55:51 PDT 2011


Thanks! I've changed sc.ini, built druntime and then phobos successfully.

Now, I'm able to build phobos.lib but when I try to compile simple
hello world program and link it to that phobos.lib OPTLINK greets me
with this:

C:\>dmd hello.d
OPTLINK (R) for Win32  Release 8.00.8
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(lifetime)
 Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
--- errorlevel 4

this is my sc.ini:

[Version]
version=7.51 Build 020

[Environment]
LIB="C:\Users\Aleksandar\Dropbox\Projects\druntime\lib";"C:\Users\Aleksandar\Dropbox\Projects\phobos\";"C:\bin\dmd2\windows\lib";"C:\bin\dm\lib"
DFLAGS="-IC:\Users\Aleksandar\Dropbox\Projects\phobos\";"C:\Users\Aleksandar\Dropbox\Projects\druntime\import"
LINKCMD=%@P%\link.exe

Also, when i do make -f win32.mak unittest I get the same error:

 --- std.socket(316) broken test ---
 --- std.regex(3443) broken test ---
OPTLINK (R) for Win32  Release 8.00.8
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
unittest.obj(unittest)
 Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
--- errorlevel 4

(plus 2 broken tests)

Do I need latest DMD from github?



On Sun, Apr 3, 2011 at 11:30 PM, Jonathan M Davis <jmdavisProg at gmx.com> wrote:
> On 2011-04-03 12:48, Aleksandar Ružičić wrote:
>> I want to fork Phobos and hack a bit on it (maybe even submit some
>> pull requests, someday), but I'm having trouble compiling it (on
>> windows).
>> This is what I've done:
>>
>>  - forked phobos on github
>>  - cloned the fork to my machine
>>  - run make -f win32.mak
>>
>> and make complained that it can't make druntime lib. So I've cloned
>> druntime in same directory where i have phobos (so I now have phobos
>> and druntime directories on same level),
>> Did make -f win32.mak clean and tried make again, but it still
>> complains about druntime:
>>
>> cd ..\..\..
>> Error: don't know how to make '..\druntime\lib\druntime.lib'
>>
>> What I'm I doing wrong? Am I missing some more components?
>> I just want to be able to edit phobos source, compile it to phobos.lib
>> and link it to my d program.
>>
>> I have DMC, DMD and LINK on PATH, that's not the issue...
>
> I believe that these are the correct steps:
>
> 1. Make sure that druntime and phobos were both put at the same directory
> level. e.g. I have C:/github/druntime and C:/github/phobos.
>
> 2. Adjust your sc.ini accordingly. e.g. Mine is
>
> =========
> [Version]
> version=7.51 Build 020
>
> [Environment]
> LIB="c:\github\druntime\lib";"c:\github\phobos\";"c:\dmd2\windows\lib";c:
> \dm\lib
> DFLAGS="-Ic:\github\phobos\";"c:\github\druntime\import"
> LINKCMD=%@P%\link.exe
> =========
>
> 3. Build druntime by running make -f win32.mak in the druntime directory.
>
> 4. Build Phobos by running make -f win32.mak in the phobos directory.
>
> - Jonathan M Davis
>


More information about the Digitalmars-d mailing list