February 24, 2012
On Fri, Feb 24, 2012 at 08:36:03PM +0100, Jordi Sayol wrote: [...]
> better wait till libphobos2.a becomes libphobos2.so
[...]

You might have to wait a while for that. AFAIK there are no plans currently to make phobos available as a shared library yet.

I personally think that phobos *should* be a shared object at some point, but not everyone agrees with me.


T

-- 
Lottery: tax on the stupid. -- Slashdotter
February 24, 2012
Al 24/02/12 20:45, En/na H. S. Teoh ha escrit:
> On Fri, Feb 24, 2012 at 08:36:03PM +0100, Jordi Sayol wrote: [...]
>> better wait till libphobos2.a becomes libphobos2.so
> [...]
> 
> You might have to wait a while for that. AFAIK there are no plans currently to make phobos available as a shared library yet.
> 
> I personally think that phobos *should* be a shared object at some point, but not everyone agrees with me.
> 

I think that phobos should be a shared object too, but only when it has some sense (by now, every dmd release breaks previous libraries, at least gtkd ones)

Best regards,
-- 
Jordi Sayol
February 24, 2012
On Fri, Feb 24, 2012 at 09:35:57PM +0100, Jordi Sayol wrote:
> Al 24/02/12 20:45, En/na H. S. Teoh ha escrit:
[...]
> > I personally think that phobos *should* be a shared object at some point, but not everyone agrees with me.
> > 
> 
> I think that phobos should be a shared object too, but only when it has some sense (by now, every dmd release breaks previous libraries, at least gtkd ones)
[...]

I suppose D/Phobos is currently still too volatile to start committing to shared library version numbers yet. One *could* in theory start doing it and just end up with very large version numbers, which the system in theory can handle just fine, although people seem aversive to the possibility of having /usr/lib/libphobos.so.2.x for all x from 0 to some very large number.


T

-- 
It won't be covered in the book. The source code has to be useful for something, after all. -- Larry Wall
February 26, 2012
Le vendredi 24 février 2012 à 13:00 -0800, H. S. Teoh a écrit :
> On Fri, Feb 24, 2012 at 09:35:57PM +0100, Jordi Sayol wrote:
> > Al 24/02/12 20:45, En/na H. S. Teoh ha escrit:
> [...]
> > > I personally think that phobos *should* be a shared object at some point, but not everyone agrees with me.
> > > 
> > 
> > I think that phobos should be a shared object too, but only when it has some sense (by now, every dmd release breaks previous libraries, at least gtkd ones)
> [...]
> 
> I suppose D/Phobos is currently still too volatile to start committing to shared library version numbers yet. One *could* in theory start doing it and just end up with very large version numbers, which the system in theory can handle just fine, although people seem aversive to the possibility of having /usr/lib/libphobos.so.2.x for all x from 0 to some very large number.
> 
> 
> T
> 

ldc build already phobos / druntime as shared lib with
/usr/lib/libphobos.so.2.x
/usr/lib/libphobos.so.2
/usr/lib/libphobos.so.2

and same for druntime

February 26, 2012
Le vendredi 24 février 2012 à 15:56 +0100, Mike Wey a écrit :
> On 02/23/2012 08:29 PM, bioinfornatics wrote:
> > Le jeudi 23 février 2012 à 19:46 +0100, Mike Wey a écrit :
> >> On 02/23/2012 05:27 PM, bioinfornatics wrote:
> >>> dear,
> >>> for set soname with:
> >>> - gdc: -Xlinker -soname myLib.so.1
> >>> - ldc2: -soname myLib.so.1
> >>> - dmd: ?
> >>>
> >>> someone know how set soname with dmd ?
> >>>
> >>
> >> dmd -L-soname=mylib.so.1
> >>
> >
> > Thanks
> > i will do so a $(SONAME_FLAG) in my makefile and maybe i will do a pull
> > request for gtkd because ldc do not use -L-soname instead of dmd
> >
> 
> The GtkD Makefile uses:
> 
> $(LINKERFLAG)-soname=$@.$(call stripBugfix,$(SO_VERSION))
> 
> Witch works with all the compilers, $(LINKERFLAG) is either -L or -Xlinker (with a space on th end).
> 

this it is good for dmd and gdc but ldc use -soname without -L
gdc: -Xlinker -soname
ldc: -soname
dmd: -L -soname


with ldc you do not to do calling the linker with $(LINKERFLAG

February 26, 2012
On 02/26/2012 02:53 PM, bioinfornatics wrote:
> Le vendredi 24 février 2012 à 15:56 +0100, Mike Wey a écrit :
>> On 02/23/2012 08:29 PM, bioinfornatics wrote:
>>> Le jeudi 23 février 2012 à 19:46 +0100, Mike Wey a écrit :
>>>> On 02/23/2012 05:27 PM, bioinfornatics wrote:
>>>>> dear,
>>>>> for set soname with:
>>>>> - gdc: -Xlinker -soname myLib.so.1
>>>>> - ldc2: -soname myLib.so.1
>>>>> - dmd: ?
>>>>>
>>>>> someone know how set soname with dmd ?
>>>>>
>>>>
>>>> dmd -L-soname=mylib.so.1
>>>>
>>>
>>> Thanks
>>> i will do so a $(SONAME_FLAG) in my makefile and maybe i will do a pull
>>> request for gtkd because ldc do not use -L-soname instead of dmd
>>>
>>
>> The GtkD Makefile uses:
>>
>> $(LINKERFLAG)-soname=$@.$(call stripBugfix,$(SO_VERSION))
>>
>> Witch works with all the compilers, $(LINKERFLAG) is either -L or
>> -Xlinker (with a space on th end).
>>
>
> this it is good for dmd and gdc but ldc use -soname without -L
> gdc: -Xlinker -soname
> ldc: -soname
> dmd: -L -soname
>
>
> with ldc you do not to do calling the linker with $(LINKERFLAG
>

Well, i am able to build the GtkD shared libs for ldc2 with the current make file.

Not sure why ldc has it's own soname flag as only the linker would care about it so using -L to pass it on to the linker works just fine.

-- 
Mike Wey
February 27, 2012
On 2012-02-26 14:53, bioinfornatics wrote:
> Le vendredi 24 février 2012 à 15:56 +0100, Mike Wey a écrit :
>> On 02/23/2012 08:29 PM, bioinfornatics wrote:
>>> Le jeudi 23 février 2012 à 19:46 +0100, Mike Wey a écrit :
>>>> On 02/23/2012 05:27 PM, bioinfornatics wrote:
>>>>> dear,
>>>>> for set soname with:
>>>>> - gdc: -Xlinker -soname myLib.so.1
>>>>> - ldc2: -soname myLib.so.1
>>>>> - dmd: ?
>>>>>
>>>>> someone know how set soname with dmd ?
>>>>>
>>>>
>>>> dmd -L-soname=mylib.so.1
>>>>
>>>
>>> Thanks
>>> i will do so a $(SONAME_FLAG) in my makefile and maybe i will do a pull
>>> request for gtkd because ldc do not use -L-soname instead of dmd
>>>
>>
>> The GtkD Makefile uses:
>>
>> $(LINKERFLAG)-soname=$@.$(call stripBugfix,$(SO_VERSION))
>>
>> Witch works with all the compilers, $(LINKERFLAG) is either -L or
>> -Xlinker (with a space on th end).
>>
>
> this it is good for dmd and gdc but ldc use -soname without -L
> gdc: -Xlinker -soname
> ldc: -soname
> dmd: -L -soname
>
>
> with ldc you do not to do calling the linker with $(LINKERFLAG

Do the ldmd and gdmd wrapper scripts handle this?

-- 
/Jacob Carlborg
February 27, 2012
Le lundi 27 février 2012 à 09:51 +0100, Jacob Carlborg a écrit :
> On 2012-02-26 14:53, bioinfornatics wrote:
> > Le vendredi 24 février 2012 à 15:56 +0100, Mike Wey a écrit :
> >> On 02/23/2012 08:29 PM, bioinfornatics wrote:
> >>> Le jeudi 23 février 2012 à 19:46 +0100, Mike Wey a écrit :
> >>>> On 02/23/2012 05:27 PM, bioinfornatics wrote:
> >>>>> dear,
> >>>>> for set soname with:
> >>>>> - gdc: -Xlinker -soname myLib.so.1
> >>>>> - ldc2: -soname myLib.so.1
> >>>>> - dmd: ?
> >>>>>
> >>>>> someone know how set soname with dmd ?
> >>>>>
> >>>>
> >>>> dmd -L-soname=mylib.so.1
> >>>>
> >>>
> >>> Thanks
> >>> i will do so a $(SONAME_FLAG) in my makefile and maybe i will do a pull
> >>> request for gtkd because ldc do not use -L-soname instead of dmd
> >>>
> >>
> >> The GtkD Makefile uses:
> >>
> >> $(LINKERFLAG)-soname=$@.$(call stripBugfix,$(SO_VERSION))
> >>
> >> Witch works with all the compilers, $(LINKERFLAG) is either -L or
> >> -Xlinker (with a space on th end).
> >>
> >
> > this it is good for dmd and gdc but ldc use -soname without -L
> > gdc: -Xlinker -soname
> > ldc: -soname
> > dmd: -L -soname
> >
> >
> > with ldc you do not to do calling the linker with $(LINKERFLAG
> 
> Do the ldmd and gdmd wrapper scripts handle this?
> 

no but i will add it soon, waiting klickverbot or sokol


Mike Wey could you look if soname is really setted with objdup -p libgtkd.so.1.5 | grep -i soname

February 27, 2012
On 02/27/2012 10:30 AM, bioinfornatics wrote:
> Le lundi 27 février 2012 à 09:51 +0100, Jacob Carlborg a écrit :
>> On 2012-02-26 14:53, bioinfornatics wrote:
>>> Le vendredi 24 février 2012 à 15:56 +0100, Mike Wey a écrit :
>>>> On 02/23/2012 08:29 PM, bioinfornatics wrote:
>>>>> Le jeudi 23 février 2012 à 19:46 +0100, Mike Wey a écrit :
>>>>>> On 02/23/2012 05:27 PM, bioinfornatics wrote:
>>>>>>> dear,
>>>>>>> for set soname with:
>>>>>>> - gdc: -Xlinker -soname myLib.so.1
>>>>>>> - ldc2: -soname myLib.so.1
>>>>>>> - dmd: ?
>>>>>>>
>>>>>>> someone know how set soname with dmd ?
>>>>>>>
>>>>>>
>>>>>> dmd -L-soname=mylib.so.1
>>>>>>
>>>>>
>>>>> Thanks
>>>>> i will do so a $(SONAME_FLAG) in my makefile and maybe i will do a pull
>>>>> request for gtkd because ldc do not use -L-soname instead of dmd
>>>>>
>>>>
>>>> The GtkD Makefile uses:
>>>>
>>>> $(LINKERFLAG)-soname=$@.$(call stripBugfix,$(SO_VERSION))
>>>>
>>>> Witch works with all the compilers, $(LINKERFLAG) is either -L or
>>>> -Xlinker (with a space on th end).
>>>>
>>>
>>> this it is good for dmd and gdc but ldc use -soname without -L
>>> gdc: -Xlinker -soname
>>> ldc: -soname
>>> dmd: -L -soname
>>>
>>>
>>> with ldc you do not to do calling the linker with $(LINKERFLAG
>>
>> Do the ldmd and gdmd wrapper scripts handle this?
>>
>
> no but i will add it soon, waiting klickverbot or sokol
>
>
> Mike Wey could you look if soname is really setted with
> objdup -p libgtkd.so.1.5 | grep -i soname
>

$ make shared-libs DC="ldc2"
[ Lots of text scrolls by ;) ]

$ objdump -p libgtkd.so | grep -i soname
  SONAME               libgtkd.so.1.5

ldc is called like this by the make file:
ld -r "All the object files" -o libgtkd.so.o
ldc2 -shared -oflibgtkd.so -L-soname=libgtkd.so.1.5 -L-ldl -m64 libgtkd.so.o

-- 
Mike Wey
February 27, 2012
Le lundi 27 février 2012 à 11:36 +0100, Mike Wey a écrit :
> On 02/27/2012 10:30 AM, bioinfornatics wrote:
> > Le lundi 27 février 2012 à 09:51 +0100, Jacob Carlborg a écrit :
> >> On 2012-02-26 14:53, bioinfornatics wrote:
> >>> Le vendredi 24 février 2012 à 15:56 +0100, Mike Wey a écrit :
> >>>> On 02/23/2012 08:29 PM, bioinfornatics wrote:
> >>>>> Le jeudi 23 février 2012 à 19:46 +0100, Mike Wey a écrit :
> >>>>>> On 02/23/2012 05:27 PM, bioinfornatics wrote:
> >>>>>>> dear,
> >>>>>>> for set soname with:
> >>>>>>> - gdc: -Xlinker -soname myLib.so.1
> >>>>>>> - ldc2: -soname myLib.so.1
> >>>>>>> - dmd: ?
> >>>>>>>
> >>>>>>> someone know how set soname with dmd ?
> >>>>>>>
> >>>>>>
> >>>>>> dmd -L-soname=mylib.so.1
> >>>>>>
> >>>>>
> >>>>> Thanks
> >>>>> i will do so a $(SONAME_FLAG) in my makefile and maybe i will do a pull
> >>>>> request for gtkd because ldc do not use -L-soname instead of dmd
> >>>>>
> >>>>
> >>>> The GtkD Makefile uses:
> >>>>
> >>>> $(LINKERFLAG)-soname=$@.$(call stripBugfix,$(SO_VERSION))
> >>>>
> >>>> Witch works with all the compilers, $(LINKERFLAG) is either -L or
> >>>> -Xlinker (with a space on th end).
> >>>>
> >>>
> >>> this it is good for dmd and gdc but ldc use -soname without -L
> >>> gdc: -Xlinker -soname
> >>> ldc: -soname
> >>> dmd: -L -soname
> >>>
> >>>
> >>> with ldc you do not to do calling the linker with $(LINKERFLAG
> >>
> >> Do the ldmd and gdmd wrapper scripts handle this?
> >>
> >
> > no but i will add it soon, waiting klickverbot or sokol
> >
> >
> > Mike Wey could you look if soname is really setted with objdup -p libgtkd.so.1.5 | grep -i soname
> >
> 
> $ make shared-libs DC="ldc2"
> [ Lots of text scrolls by ;) ]
> 
> $ objdump -p libgtkd.so | grep -i soname
>    SONAME               libgtkd.so.1.5
> 
> ldc is called like this by the make file:
> ld -r "All the object files" -o libgtkd.so.o
> ldc2 -shared -oflibgtkd.so -L-soname=libgtkd.so.1.5 -L-ldl -m64 libgtkd.so.o
> 

awesome, thanks a lot

1 2
Next ›   Last »