D rpm packages for Linux

Jordi Sayol i salomó g.sayol at yahoo.es
Fri Jun 25 06:36:45 PDT 2010


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,
-- 
Jordi Sayol

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3638 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.puremagic.com/pipermail/digitalmars-d-announce/attachments/20100625/978d87c1/attachment.bin>


More information about the Digitalmars-d-announce mailing list