digitalmars.D.ldc - Fedora and library name
- Russel Winder via digitalmars-d-ldc (42/42) May 01 2017 I need some data to (hopefully) win an argument=E2=80=A6
- Mike Wey (4/14) May 02 2017 I don't know when Fedora switched, but Archlinux uses liblphobos2.so ;)
- Russel Winder via digitalmars-d-ldc (22/40) May 02 2017 =A0At
- Dicebot (4/10) May 04 2017 Unless whoever maintains Arch packages has fixed it, shared
- David Nadlinger via digitalmars-d-ldc (14/17) May 03 2017 There shouldn't be a reason to hard-code library names just to use
I need some data to (hopefully) win an argument=E2=80=A6 Some time back (the period and version number is part of the issue) on Fedora, the LDC package used to use the name libphobos-ldc.so whilst the very same version of LDC on Debian used libphobos2-ldc.so. At that time, I put in a special exception in the ldc tool of SCons to cover this. It's ugly. I now see that the LDC package on Fedora uses libphobos2-ldc.so the same as Debian (and I assume everyone else). In my usual forward looking, who cares about backward compatibility, way I have proposed removing the "Fedora Exception" and made a pull request to SCons to this effect. Bill being far more careful for the users, i.e. taking a far more professional view of backward compatibility, is saying "no leave the exception in place". Rather than just argue this in an abstract way, I think it better to gather some (at least partial) data. If the LDC packagers are listening, or indeed anyone who has actual data, do we know: 1. Which version of LDC package on Fedora switched from libphobos- ldc.so to libphobos2-ldc.so?=20 2. Which version of Fedora was the last version of Fedora with libphobos-ldc.so as the library name? 3. Is this Fedora version still maintained by Red Hat? 4. What is the situation with RHEL and CentOS? Did the LDC package ever reach there, and is the libphobos-ldc.so name still used in those versions. 5. Is anyone using LDC on RHEL and CentOS? My guess, is that no-one using LDC on Fedora is using old LDC so there is no problem there. However, Bill's caution may be justified if people are using ancient LDC and modern SCons on RHEL or CentOS. My argument is that if anyone is using an old enough LDC to see the problem they are unlikely to be using an up to date SCons. But guessing is bad, hence this request for data. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
May 01 2017
On 05/02/2017 08:56 AM, Russel Winder via digitalmars-d-ldc wrote:I need some data to (hopefully) win an argument… Some time back (the period and version number is part of the issue) on Fedora, the LDC package used to use the name libphobos-ldc.so whilst the very same version of LDC on Debian used libphobos2-ldc.so. At that time, I put in a special exception in the ldc tool of SCons to cover this. It's ugly. I now see that the LDC package on Fedora uses libphobos2-ldc.so the same as Debian (and I assume everyone else).I don't know when Fedora switched, but Archlinux uses liblphobos2.so ;) -- Mike Wey
May 02 2017
On Tue, 2017-05-02 at 19:13 +0200, Mike Wey via digitalmars-d-ldc wrote:On 05/02/2017 08:56 AM, Russel Winder via digitalmars-d-ldc wrote:=A0AtI need some data to (hopefully) win an argument=E2=80=A6 =20 Some time back (the period and version number is part of the issue) on Fedora, the LDC package used to use the name libphobos-ldc.so whilst the very same version of LDC on Debian used libphobos2-ldc.so.=C2=A0=C2=So when compiling for shared object usage on Arch you have to use the command line options: -shared -defaultlib=3Dlphobos instead of: -shared -defaultlib=3Dphobos2-ldc It seems then that no-one using Arch is using SCons working with D. Is there any way of getting CI on Arch for a person who uses only Debian and Fedora? =20 --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winderthat time, I put in a special exception in the ldc tool of SCons to cover this. It's ugly. =20 I now see that the LDC package on Fedora uses libphobos2-ldc.so the same as Debian (and I assume everyone else).=20 I don't know when Fedora switched, but Archlinux uses liblphobos2.so ;)
May 02 2017
On Tuesday, 2 May 2017 at 18:24:37 UTC, Russel Winder wrote:So when compiling for shared object usage on Arch you have to use the command line options: -shared -defaultlib=lphobos instead of: -shared -defaultlib=phobos2-ldcUnless whoever maintains Arch packages has fixed it, shared standard library is default and only available option for LDC there, no need to specify anything to use it.
May 04 2017
On 2 May 2017, at 19:24, Russel Winder via digitalmars-d-ldc wrote:There shouldn't be a reason to hard-code library names just to use shared libraries anyway. You might be interested in the following PR: https://github.com/ldc-developers/ldc/pull/2044. Initially, I was opposed to this (C/C++ libraries sometimes ship with a dynamic as well as a static version of the same name just fine), but it seems like I underestimated the amount of ways this can go wrong in the real world (i.e. distro packages, etc.). With something like that, choosing between static and shared libraries should just be a single command line flag. (Of course, this doesn't help in the slightest with your backwards-incompatibility issues.)instead of: -shared -defaultlib=phobos2-ldcWhy would you want to remove druntime from the list of linked libraries? — David
May 03 2017