D rpm packages for Linux

Neal Becker ndbecker2 at gmail.com
Fri Jun 25 11:14:12 PDT 2010


Jordi Sayol i salomó wrote:

> En/na Andrei Alexandrescu ha escrit:
>> On 06/25/2010 03:46 AM, Jordi Sayol i Salomó wrote:
>>> En/na Ellery Newcomer ha escrit:
>>>> On 06/24/2010 01:14 PM, Jordi Sayol i Salomó wrote:
>>>>> En/na Ellery Newcomer ha escrit:
>>>>>>
>>>>>> Also note that mine doesn't fail on x86_64
>>>>>>
>>>>>> (you need to add glibc-devel(x86-32) specifically as a dependency)
>>>>>>
>>>>>
>>>>> Can You be more explicit?
>>>>> I've not a 64 bit system available.
>>>>>
>>>>
>>>> dmd links to ctnrl.o or something like that, which is in glibc-devel
>>>> and must be 32 bit. If the 32 bit version ain't there, there be linker
>>>> errors on compile.
>>>>
>>>> in the spec file, after
>>>>
>>>> Requires: gcc
>>>>
>>>> add
>>>>
>>>> Requires: glibc-devel(x86-32)
>>>>
>>>> I know nothing of specific minimum version or anything like that,
>>>> though.
>>>>
>>>
>>> Many thanks for Your answer.
>>>
>>> This rpm package is build for a i386 platform, and it's only installable
>>> on a i386 system (without force it to), so the dependencies are for i386
>>> installation. Of course It can be forced to install in another platform
>>> as x86_64, alpha, arm, hppa, mips, mipsel, powerpc, s390, sparc, etc.
>>> but I cannot assure that the compiler will work on all of them. You talk
>>> about the glibc-devel package, but this is not the only one needed by
>>> the compiler, dmd also needs gcc (32 bits) and in Your rpm (as in mine)
>>> do not specifies anything about arch, also there is a missing library on
>>> Your rpm, libgcc_s.so.1 is needed too by dmd.
>>>
>>> One solution for this problem is to explain the trick needed to install
>>> the ix86 dmd rpm package on a x86_64 system, as Walter has done with the
>>> same situation for the dmd deb package,
>>> http://www.digitalmars.com/d/2.0/dmd-linux.html#installation
>>>
>>> Another one is to create a x86_64 rpm package of dmd 32 bits compiler. I
>>> don't like this solution because when dmd 64 bits appears in the near
>>> future, this will be a source of confusion.
>>>
>>> And My preferred solution, create a i386 chroot machine inside Your
>>> x86_64 system, install dmd package on it and compile Yours D programs on
>>> it too.
>> 
>> Wait, isn't there a way to say in an rpm "if the target OS is 64-bit
>> then insert this dependency, otherwise don't"?
>> 
>> Andrei
>> 
> 
> Until I know, there is not a direct way on rpm and deb packaging system to
> do that.
> 
> There is an scripting system to do what You want, but of course, You have
> to do all the job.
> 
> Best regards,

What about 
Requires:



More information about the Digitalmars-d-announce mailing list