Digger 2.3 & verstr.h problem

Robert M. Münch via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Wed Sep 2 06:14:51 PDT 2015


Some more tests with a simple example:

import std.stdio;

void main() {
    writeln("hello world!" ~ import("signature.h"));
}


mac-pro:d-language robby$ dmd -v -J. hello.d
binary    dmd
version   v2.068.0
config    /usr/local/bin/dmd.conf
parse     hello
importall hello
import    object	(/Library/D/dmd/src/druntime/import/object.d)
import    std.stdio	(/Library/D/dmd/src/phobos/std/stdio.d)
import    core.stdc.stdio 
(/Library/D/dmd/src/druntime/import/core/stdc/stdio.d)
import    core.stdc.config 
(/Library/D/dmd/src/druntime/import/core/stdc/config.d)
import    core.stdc.stdarg 
(/Library/D/dmd/src/druntime/import/core/stdc/stdarg.d)
import    core.stdc.stdlib 
(/Library/D/dmd/src/druntime/import/core/stdc/stdlib.d)
import    core.stdc.stddef 
(/Library/D/dmd/src/druntime/import/core/stdc/stddef.d)
import    core.stdc.stdint 
(/Library/D/dmd/src/druntime/import/core/stdc/stdint.d)
import    core.stdc.signal 
(/Library/D/dmd/src/druntime/import/core/stdc/signal.d)
import    core.stdc.wchar_ 
(/Library/D/dmd/src/druntime/import/core/stdc/wchar_.d)
import    core.stdc.time	(/Library/D/dmd/src/druntime/import/core/stdc/time.d)
import    core.sys.posix.sys.types 
(/Library/D/dmd/src/druntime/import/core/sys/posix/sys/types.d)
import    core.sys.posix.config 
(/Library/D/dmd/src/druntime/import/core/sys/posix/config.d)
import    std.typecons	(/Library/D/dmd/src/phobos/std/typecons.d)
import    std.traits	(/Library/D/dmd/src/phobos/std/traits.d)
import    std.typetuple	(/Library/D/dmd/src/phobos/std/typetuple.d)
import    std.meta	(/Library/D/dmd/src/phobos/std/meta.d)
import    std.stdiobase	(/Library/D/dmd/src/phobos/std/stdiobase.d)
import    std.range.primitives 
(/Library/D/dmd/src/phobos/std/range/primitives.d)
semantic  hello
import    core.stdc.errno 
(/Library/D/dmd/src/druntime/import/core/stdc/errno.d)
entry     main      	hello.d
semantic2 hello
semantic3 hello
hello.d(4): Error: file "signature.h" cannot be found or not in a path 
specified with -J


And now adding the explicit path:

mac-pro:d-language robby$ pwd
/Volumes/Daten/Windows/d/develop/d-language

mac-pro:d-language robby$ dmd -v 
-J/Volumes/Daten/Windows/d/develop/d-language hello.d
binary    dmd
version   v2.068.0
config    /usr/local/bin/dmd.conf
parse     hello
importall hello
import    object	(/Library/D/dmd/src/druntime/import/object.d)
import    std.stdio	(/Library/D/dmd/src/phobos/std/stdio.d)
import    core.stdc.stdio 
(/Library/D/dmd/src/druntime/import/core/stdc/stdio.d)
import    core.stdc.config 
(/Library/D/dmd/src/druntime/import/core/stdc/config.d)
import    core.stdc.stdarg 
(/Library/D/dmd/src/druntime/import/core/stdc/stdarg.d)
import    core.stdc.stdlib 
(/Library/D/dmd/src/druntime/import/core/stdc/stdlib.d)
import    core.stdc.stddef 
(/Library/D/dmd/src/druntime/import/core/stdc/stddef.d)
import    core.stdc.stdint 
(/Library/D/dmd/src/druntime/import/core/stdc/stdint.d)
import    core.stdc.signal 
(/Library/D/dmd/src/druntime/import/core/stdc/signal.d)
import    core.stdc.wchar_ 
(/Library/D/dmd/src/druntime/import/core/stdc/wchar_.d)
import    core.stdc.time	(/Library/D/dmd/src/druntime/import/core/stdc/time.d)
import    core.sys.posix.sys.types 
(/Library/D/dmd/src/druntime/import/core/sys/posix/sys/types.d)
import    core.sys.posix.config 
(/Library/D/dmd/src/druntime/import/core/sys/posix/config.d)
import    std.typecons	(/Library/D/dmd/src/phobos/std/typecons.d)
import    std.traits	(/Library/D/dmd/src/phobos/std/traits.d)
import    std.typetuple	(/Library/D/dmd/src/phobos/std/typetuple.d)
import    std.meta	(/Library/D/dmd/src/phobos/std/meta.d)
import    std.stdiobase	(/Library/D/dmd/src/phobos/std/stdiobase.d)
import    std.range.primitives 
(/Library/D/dmd/src/phobos/std/range/primitives.d)
semantic  hello
import    core.stdc.errno 
(/Library/D/dmd/src/druntime/import/core/stdc/errno.d)
entry     main      	hello.d
semantic2 hello
semantic3 hello
file      signature.h	(/Volumes/Daten/windows/d/develop/d-language/signature.h)
...

It works. This made me suspicous what's goind on. The 
/Volumes/Daten/... device is not the boot device nor the one where my 
~home directory is located. So, tried it there:

mac-pro:tmp robby$ pwd
/Users/robby/tmp

mac-pro:tmp robby$ dmd -v -J. hello.d
binary    dmd
version   v2.068.0
config    /usr/local/bin/dmd.conf
parse     hello
importall hello
import    object	(/Library/D/dmd/src/druntime/import/object.d)
import    std.stdio	(/Library/D/dmd/src/phobos/std/stdio.d)
import    core.stdc.stdio 
(/Library/D/dmd/src/druntime/import/core/stdc/stdio.d)
import    core.stdc.config 
(/Library/D/dmd/src/druntime/import/core/stdc/config.d)
import    core.stdc.stdarg 
(/Library/D/dmd/src/druntime/import/core/stdc/stdarg.d)
import    core.stdc.stdlib 
(/Library/D/dmd/src/druntime/import/core/stdc/stdlib.d)
import    core.stdc.stddef 
(/Library/D/dmd/src/druntime/import/core/stdc/stddef.d)
import    core.stdc.stdint 
(/Library/D/dmd/src/druntime/import/core/stdc/stdint.d)
import    core.stdc.signal 
(/Library/D/dmd/src/druntime/import/core/stdc/signal.d)
import    core.stdc.wchar_ 
(/Library/D/dmd/src/druntime/import/core/stdc/wchar_.d)
import    core.stdc.time	(/Library/D/dmd/src/druntime/import/core/stdc/time.d)
import    core.sys.posix.sys.types 
(/Library/D/dmd/src/druntime/import/core/sys/posix/sys/types.d)
import    core.sys.posix.config 
(/Library/D/dmd/src/druntime/import/core/sys/posix/config.d)
import    std.typecons	(/Library/D/dmd/src/phobos/std/typecons.d)
import    std.traits	(/Library/D/dmd/src/phobos/std/traits.d)
import    std.typetuple	(/Library/D/dmd/src/phobos/std/typetuple.d)
import    std.meta	(/Library/D/dmd/src/phobos/std/meta.d)
import    std.stdiobase	(/Library/D/dmd/src/phobos/std/stdiobase.d)
import    std.range.primitives 
(/Library/D/dmd/src/phobos/std/range/primitives.d)
semantic  hello
import    core.stdc.errno 
(/Library/D/dmd/src/druntime/import/core/stdc/errno.d)
entry     main      	hello.d
semantic2 hello
semantic3 hello
file      signature.h	(/Users/robby/tmp/signature.h)


This works too. So, it has to do with some access depending which 
device it's running on. I have these:

mac-pro:tmp robby$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *256.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS System                  254.6 GB   disk0s2
   3:                 Apple_Boot Recovery HD             1.0 GB     disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *9.0 TB     disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                  Apple_HFS Daten                   9.0 TB     disk1s2

As you can see /dev/disk0 seems to work /dev/disk1 not. Any idea how 
this can influence the -J switch?

-- 
Robert M. Münch
http://www.saphirion.com
smarter | better | faster



More information about the Digitalmars-d-learn mailing list