On 15 March 2013 15:21, Benjamin Thaut <code@benjamin-thaut.de> wrote:
Am 15.03.2013 15:29, schrieb Iain Buclaw:
On 15 March 2013 14:06, Benjamin Thaut <code@benjamin-thaut.de

<mailto:code@benjamin-thaut.de>> wrote:

    Am 15.03.2013 14:20, schrieb Iain Buclaw:

        On 15 March 2013 13:18, Iain Buclaw <ibuclaw@ubuntu.com
        <mailto:ibuclaw@ubuntu.com>

        <mailto:ibuclaw@ubuntu.com <mailto:ibuclaw@ubuntu.com>>> wrote:

             On 15 March 2013 13:05, Benjamin Thaut
        <code@benjamin-thaut.de <mailto:code@benjamin-thaut.de>
             <mailto:code@benjamin-thaut.de
        <mailto:code@benjamin-thaut.de>__>> wrote:

                 Am 15.03.2013 13:26, schrieb Iain Buclaw:

                     On 15 March 2013 12:01, Benjamin Thaut
                     <code@benjamin-thaut.de
        <mailto:code@benjamin-thaut.de> <mailto:code@benjamin-thaut.de
        <mailto:code@benjamin-thaut.de>__>

                     <mailto:code@benjamin-thaut.de
        <mailto:code@benjamin-thaut.de>

                     <mailto:code@benjamin-thaut.de
        <mailto:code@benjamin-thaut.de>__>__>> wrote:


                          Well I don't want to overwrite the existing
        version of
                     druntime and
                          phobos. I want to be ablte to specifiy via a
        compiler
                     option to use
                          a different version of them. In some projects
        I use the
                     original
                          druntime + phobos and in other projects I use
        my custom
                     version.
                          With dmd this is possible via a custom sc.ini
        file. So
                     is there a
                          option to just remove druntime/phobos from
                     LIBRARY_PATH? (and keep
                          everything else)

                          Kind Regards
                          Benjamin Thaut


                     You didn't seem to read my first message. :)

                     On 15 March 2013 10:03, Iain Buclaw
        <ibuclaw@ubuntu.com <mailto:ibuclaw@ubuntu.com>
                     <mailto:ibuclaw@ubuntu.com <mailto:ibuclaw@ubuntu.com>>
                     <mailto:ibuclaw@ubuntu.com
        <mailto:ibuclaw@ubuntu.com> <mailto:ibuclaw@ubuntu.com
        <mailto:ibuclaw@ubuntu.com>>>
                     <mailto:ibuclaw@ubuntu.com
        <mailto:ibuclaw@ubuntu.com> <mailto:ibuclaw@ubuntu.com
        <mailto:ibuclaw@ubuntu.com>>
                     <mailto:ibuclaw@ubuntu.com
        <mailto:ibuclaw@ubuntu.com> <mailto:ibuclaw@ubuntu.com
        <mailto:ibuclaw@ubuntu.com>>>>> wrote:

                           The library is installed in /usr/lib,  which
        is part
                     of the
                           LIBRARY_PATH.   The static library itself is a
                     combination of
                           druntime and phobos together, not separate at the
                     moment.  To
                           specify a different standard library, use
        -defaultlib
                     switch.



                     --
                     Iain Buclaw

                     *(p < e ? p++ : p) = (c & 0x0f) + '0';


                 I don't fully understand that statement.
                 So the -defaultlib switch gives the location for the import
                 files .di/.d and not for the actual library (.a) ?


             No,  that's -I and -J



        Use case:

        gdc foo.d -defaultlib tango2


        This will invoke the driver to add -ltango2 to the linker options,
        instead of -lgphobos2

        Regards
        --
        Iain Buclaw

        *(p < e ? p++ : p) = (c & 0x0f) + '0';


    Well but I'm not talking about the linker. If I do

    import std.stdio;

    I want to have a error message that std.stdio does not exist.

    Kind Regards
    Benjamin Thaut



-nostdinc should do that.  Though the first error thrown would be that
object.di cannot be found, which is correct behaviour,  you need to
specify where the new object.di is using -I


--
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';

Thats the problem. As soon as I specify -nostdinc a lot of other options get missing to. For example gdc no longer includes the contents of version(Windows) statements.
Is it possible that the phobos-ver-syms files have something to do with that?


That shouldn't be the case if you are using a recent development version (see patch-versym-os-4.8.x where there is a builtin define for Windows)

--
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';