[openssl-dev] [openssl.org #4428] Gentoo 12.1, x86_64: crypto/aes/aes_cfb.c:1:0: error: CPU you selected does not support x86-64 instruction set

Andy Polyakov via RT rt at openssl.org
Mon Mar 14 14:52:24 UTC 2016


On 03/14/16 03:58, noloader at gmail.com via RT wrote:
> Working from Master...
> 
> gentoo at Gentoo-2012 ~/openssl $ ./config
> Operating system: x86_64-whatever-linux2
> Configuring for linux-x86_64
> Configuring OpenSSL version 1.1.0-pre4-dev (0x0x10100004L)
>     no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG (skip dir)
>     no-crypto-mdebug-backtrace [forced]
> OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE (skip dir)
>     no-dynamic-engine [forced]
>     no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
>     no-egd          [default]  OPENSSL_NO_EGD (skip dir)
>     no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS (skip dir)
>     no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
>     no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
>     no-sctp         [default]  OPENSSL_NO_SCTP (skip dir)
>     no-shared       [default]
>     no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE (skip dir)
>     no-ssl3         [default]  OPENSSL_NO_SSL3 (skip dir)
>     no-ssl3-method  [default]  OPENSSL_NO_SSL3_METHOD (skip dir)
>     no-static-engine [default]  OPENSSL_NO_STATIC_ENGINE (skip dir)
>     no-unit-test    [default]  OPENSSL_NO_UNIT_TEST (skip dir)
>     no-weak-ssl-ciphers [default]  OPENSSL_NO_WEAK_SSL_CIPHERS (skip dir)
>     no-zlib         [default]
>     no-zlib-dynamic [default]
> Configuring for linux-x86_64
> IsMK1MF       =no
> CC            =gcc
> CFLAG         =-Wall -O3 -pthread -m64 -DL_ENDIAN  -Wa,--noexecstack
> SHARED_CFLAG  =-fPIC
> DEFINES       =DSO_DLFCN HAVE_DLFCN_H OPENSSL_THREADS
> OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC OPENSSL_IA32_SSE2
> OPENSSL_BN_ASM_MONT OPENSSL_BN_ASM_MONT5 OPENSSL_BN_ASM_GF2m SHA1_ASM
> SHA256_ASM SHA512_ASM MD5_ASM AES_ASM VPAES_ASM BSAES_ASM GHASH_ASM
> ECP_NISTZ256_ASM POLY1305_ASM
> LFLAG         =
> PLIB_LFLAG    =
> EX_LIBS       =-ldl
> APPS_OBJ      =
> CPUID_OBJ     =x86_64cpuid.o
> UPLINK_OBJ    =
> BN_ASM        =asm/x86_64-gcc.o x86_64-mont.o x86_64-mont5.o
> x86_64-gf2m.o rsaz_exp.o rsaz-x86_64.o rsaz-avx2.o
> EC_ASM        =ecp_nistz256.o ecp_nistz256-x86_64.o
> DES_ENC       =des_enc.o fcrypt_b.o
> AES_ENC       =aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o
> aesni-x86_64.o aesni-sha1-x86_64.o aesni-sha256-x86_64.o
> aesni-mb-x86_64.o
> BF_ENC        =bf_enc.o
> CAST_ENC      =c_enc.o
> RC4_ENC       =rc4-x86_64.o rc4-md5-x86_64.o
> RC5_ENC       =rc5_enc.o
> MD5_OBJ_ASM   =md5-x86_64.o
> SHA1_OBJ_ASM  =sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o
> sha1-mb-x86_64.o sha256-mb-x86_64.o
> RMD160_OBJ_ASM=
> CMLL_ENC      =cmll-x86_64.o cmll_misc.o
> MODES_OBJ     =ghash-x86_64.o aesni-gcm-x86_64.o
> PADLOCK_OBJ   =e_padlock-x86_64.o
> CHACHA_ENC    =chacha-x86_64.o
> POLY1305_OBJ  =poly1305-x86_64.o
> BLAKE2_OBJ    =
> PROCESSOR     =
> RANLIB        =/usr/bin/ranlib
> ARFLAGS       =
> PERL          =/usr/bin/perl
> 
> SIXTY_FOUR_BIT_LONG mode
> 
> Configured for linux-x86_64.
> gentoo at Gentoo-2012 ~/openssl $ make depend && make clean && make
> rm -f
> rm -f
> rm -f libcrypto.a libssl.a
> rm -f apps/openssl test/afalgtest test/asynctest test/bftest
> test/bntest test/casttest test/clienthellotest test/constant_time_test
> test/ct_test test/danetest test/destest test/dhtest test/dsatest
> test/dtlsv1listentest test/ecdhtest test/ecdsatest test/ectest
> test/enginetest test/evp_extra_test test/evp_test test/exptest
> test/gmdifftest test/heartbeat_test test/hmactest test/ideatest
> test/igetest test/md2test test/md4test test/md5test test/mdc2test
> test/memleaktest test/nptest test/p5_crpt2_test test/packettest
> test/pbelutest test/randtest test/rc2test test/rc4test test/rc5test
> test/rmdtest test/rsa_test test/secmemtest test/sha1test test/sha256t
> test/sha512t test/srptest test/ssltest test/threadstest
> test/v3nametest test/verify_extra_test test/wp_test  apps/CA.pl
> tools/c_rehash
> rm -f crypto/sha/sha512-sparcv9.s crypto/chacha/chacha-ppc.s
> crypto/sha/sha256-mips.s crypto/sha/sha256-armv8.s
> crypto/rc4/rc4-586.s crypto/bn/ia64-mont.s crypto/x86cpuid.s
> crypto/aes/bsaes-x86_64.s crypto/sha/sha512-ppc.s
> crypto/sha/sha512-mips.s crypto/sha/sha1-mips.s
> crypto/ec/ecp_nistz256-armv4.s crypto/sha/sha1-mb-x86_64.s
> crypto/chacha/chacha-x86.s crypto/bn/alpha-mont.s
> engines/e_padlock-x86.s crypto/sha/sha512-586.s
> crypto/bn/sparcv9-gf2m.s crypto/aes/aes-armv4.s
> crypto/sha/sha256p8-ppc.s crypto/modes/ghash-x86.s
> crypto/modes/ghash-ia64.s crypto/sha/sha256-586.s
> crypto/aes/bsaes-armv7.s crypto/bn/sparct4-mont.s crypto/ia64cpuid.s
> crypto/camellia/cmll-x86.s crypto/x86_64cpuid.s
> crypto/poly1305/poly1305-armv4.s crypto/bn/rsaz-avx2.s
> crypto/bn/x86-mont.s crypto/modes/ghash-parisc.s
> crypto/aes/aest4-sparcv9.s crypto/bn/sparcv9-mont.s crypto/bf/bf-586.s
> crypto/des/crypt586.s crypto/bn/ppc-mont.s
> crypto/ec/ecp_nistz256-avx2.s crypto/aes/aesp8-ppc.s
> crypto/bn/parisc-mont.s crypto/sha/sha256-ppc.s
> crypto/sha/sha512-parisc.s crypto/aes/aesv8-armx.s
> crypto/bn/sparcv9a-mont.s crypto/aes/aes-sparcv9.s
> crypto/bn/x86-gf2m.s crypto/bn/bn-mips.s
> crypto/ec/ecp_nistz256-armv8.s crypto/sha/sha256-ia64.s
> crypto/chacha/chacha-armv4.s crypto/sha/sha512-x86_64.s
> crypto/camellia/cmll-x86_64.s crypto/sha/sha256-armv4.s
> crypto/poly1305/poly1305-x86.s crypto/bn/ppc64-mont.s
> crypto/modes/aesni-gcm-x86_64.s crypto/aes/vpaes-x86_64.s
> crypto/modes/ghash-alpha.s crypto/ec/ecp_nistz256-x86.s
> crypto/armv4cpuid.s crypto/bn/armv4-mont.s crypto/aes/aes-parisc.s
> crypto/buildinf.h crypto/aes/aes-ppc.s crypto/bn/bn-586.s
> crypto/bn/x86_64-mont5.s engines/e_padlock-x86_64.s
> crypto/aes/vpaes-x86.s crypto/sha/sha512-armv8.s
> crypto/bn/x86_64-mont.s crypto/camellia/cmllt4-sparcv9.s
> crypto/modes/ghash-sparcv9.s crypto/chacha/chacha-x86_64.s
> crypto/modes/ghashv8-armx.s crypto/bn/x86_64-gf2m.s
> crypto/des/dest4-sparcv9.s crypto/aes/aesni-sha1-x86_64.s
> crypto/aes/aesni-x86_64.s crypto/sha/sha256-mb-x86_64.s
> crypto/bn/armv8-mont.s crypto/sha/sha1-ppc.s crypto/whrlpool/wp-mmx.s
> crypto/modes/ghash-armv4.s crypto/bn/armv4-gf2m.s
> crypto/ec/ecp_nistz256-x86_64.s crypto/md5/md5-586.s
> crypto/sha/sha256-sparcv9.s crypto/aes/aes-586.s crypto/ppccpuid.s
> crypto/uplink-x86.s crypto/sha/sha256-x86_64.s
> crypto/poly1305/poly1305-x86_64.s crypto/bn/s390x-mont.s
> crypto/aes/aesni-x86.s crypto/sha/sha1-sparcv9.s
> crypto/poly1305/poly1305-armv8.s crypto/sha/sha1-armv8.s
> crypto/des/des_enc-sparc.s crypto/pariscid.s crypto/ripemd/rmd-586.s
> crypto/poly1305/poly1305-ppc.s crypto/aes/aes-mips.s
> crypto/sha/sha1-parisc.s crypto/aes/vpaes-ppc.s crypto/cast/cast-586.s
> crypto/aes/aesni-sha256-x86_64.s crypto/sha/sha512-ia64.s
> crypto/bn/bn-ppc.s crypto/poly1305/poly1305-sparcv9.s
> crypto/sha/sha512-armv4.s crypto/bn/rsaz-x86_64.s
> crypto/modes/ghashp8-ppc.s crypto/rc4/rc4-parisc.s
> crypto/bn/mips-mont.s crypto/des/des-586.s
> crypto/sha/sha1-armv4-large.s crypto/sha/sha1-586.s
> crypto/bn/s390x-gf2m.s crypto/aes/aes-ia64.s crypto/arm64cpuid.s
> crypto/sha/sha1-x86_64.s crypto/md5/md5-sparcv9.s
> crypto/whrlpool/wp-x86_64.s crypto/rc4/rc4-x86_64.s
> crypto/rc4/rc4-ia64.s crypto/sha/sha256-parisc.s
> crypto/aes/aesni-mb-x86_64.s crypto/bn/bn-ia64.s crypto/alphacpuid.s
> crypto/md5/md5-x86_64.s crypto/aes/vpaes-armv8.s
> crypto/rc4/rc4-md5-x86_64.s crypto/sha/sha512p8-ppc.s
> crypto/ec/ecp_nistz256-sparcv9.s crypto/chacha/chacha-armv8.s
> crypto/bn/vis3-mont.s crypto/modes/ghash-x86_64.s
> crypto/aes/aes-x86_64.s crypto/bn/co-586.s
> crypto/poly1305/poly1305-ppcfp.s crypto/sha/sha1-alpha.s
> crypto/sha/sha1-ia64.s
> rm -f `find . -name '*.d'`
> rm -f `find . -name '*.o'`
> rm -f core
> rm -f tags TAGS
> rm -f openssl.pc libcrypto.pc libssl.pc
> rm -f `find . -type l`
> rm -f ../openssl-1.1.0-pre4-dev.tar
> CC="gcc" /usr/bin/perl crypto/aes/asm/aes-x86_64.pl elf crypto/aes/aes-x86_64.s
> gcc -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS
> -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2
> -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m
> -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM
> -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM
> -DOPENSSLDIR="\"/usr/local/ssl\""
> -DENGINESDIR="\"/usr/local/lib/engines\"" -Wall -O3 -pthread -m64
> -DL_ENDIAN  -Wa,--noexecstack -fPIC -Iinclude -I. -Icrypto/include
> -MMD -MF crypto/aes/aes-x86_64.d.tmp -MT crypto/aes/aes-x86_64.o -c -o
> crypto/aes/aes-x86_64.o crypto/aes/aes-x86_64.s
> gcc -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_THREADS
> -DOPENSSL_NO_DYNAMIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2
> -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m
> -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM
> -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM
> -DOPENSSLDIR="\"/usr/local/ssl\""
> -DENGINESDIR="\"/usr/local/lib/engines\"" -Wall -O3 -pthread -m64
> -DL_ENDIAN  -Wa,--noexecstack -fPIC -Iinclude -I. -Icrypto/include
> -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o
> crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c
> crypto/aes/aes_cfb.c:1:0: error: CPU you selected does not support
> x86-64 instruction set
> make: *** [crypto/aes/aes_cfb.o] Error 1
> gentoo at Gentoo-2012 ~/openssl $

Can you confirm that it's not a problem to compile "hello, world" with
above flags? Because if you can't, then it can't be OpenSSL problem.

Is it possible that real target is so called x32, i.e. x86_64 with
32-bit address space limitation? In such case linux-x32 would be the
right target...




-- 
Ticket here: http://rt.openssl.org/Ticket/Display.html?id=4428
Please log in as guest with password guest if prompted



More information about the openssl-dev mailing list