[openssl-dev] Build failure on SLES11

Andy Polyakov appro at openssl.org
Thu Jun 11 14:06:33 UTC 2015


> It could be the gcc version is too old.  Trying to recall, gcc needs to
> be something like 4.4 or newer to support the Intel carry-less multiply
> instruction.

It's pure assembler issue, not compiler. You can compile the module with
gcc 3.x if you wish (I actually do) as long as you have new enough 'as'
on your $PATH.

>> I've been trying to build OpenSSL-1.0.2a on an outdated SLES11 system.
>> It fails unless I configure with "no-asm". Here is the relevant output:
>>
>> ghash-x86_64.s: Assembler messages:
>> ghash-x86_64.s:1281: Error: no such instruction: `vpclmulqdq
>> $17,%xmm2,%xmm0,%xmm1'
>> ghash-x86_64.s:1282: Error: no such instruction: `vpclmulqdq
>> $0,%xmm2,%xmm0,%xmm0'
>> [ ... many identical errors omitted ]
>>
>>
>> I believe a check inside ./crypto/modes/asm/ghash-x86_64.pl is
>> failing. Here is relevant output that might be of help:
>>
>> $ gcc -Wa,-v -c -o /dev/null -x assembler /dev/null
>> GNU assembler version 2.19 (x86_64-suse-linux) using BFD version (GNU
>> Binutils; SUSE Linux Enterprise 11) 2.19

It's can as well be wrong. I mean it might have to be adjusted as
$1>=2.20 instead of 2.19. While AVX support was added in binutils 2.19,
they might have omitted specifically vpclmulqdq. Can you confirm if it
works if you replace 2.19 with 2.20?



More information about the openssl-dev mailing list