Corss-compile gRPC to ARM architecture

687 views
Skip to first unread message

cle...@gmail.com

unread,
Nov 16, 2016, 5:36:42 AM11/16/16
to grpc.io
Hi,

I am trying to cross-compile gRPC with arm-linux-gnueabi.
I am on Ubuntu 14.04, i686-linux-gnu.
I have already cross-compiled all the third parties (OpenSSL, zlib and protobuf) in particular directories.
To cross-compile gRPC I use CMakeLists. For that, I create a cmake-build directory in which I use the command : cmake ../ -G"Unix Makefiles" -DCMAKE_C_COMPILER=arm-linux-gnueabi-gcc -DCMAKE_CXX_COMPILER=arm-linux-gnueabi-g++.
Then I run make.
Every thing seems fine until 80% where I get these errors :

third_party/boringssl/crypto/libcrypto.a(sha1.c.o): In function `SHA1_Update':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:188: undefined reference to `
sha1_block_data_order'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:204: undefined reference to `sha1_block_data_order'

third_party
/boringssl/crypto/libcrypto.a(sha1.c.o): In function `SHA1_Transform':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:219: undefined reference to `
sha1_block_data_order'
third_party/boringssl/crypto/libcrypto.a(sha1.c.o): In function `SHA1_Final'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:235: undefined reference to `sha1_block_data_order'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:249: undefined reference to `
sha1_block_data_order'
third_party/boringssl/crypto/libcrypto.a(sha256.c.o): In function `SHA256_Update'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:188: undefined reference to `sha256_block_data_order'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:204: undefined reference to `
sha256_block_data_order'
third_party/boringssl/crypto/libcrypto.a(sha256.c.o): In function `SHA256_Transform'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:219: undefined reference to `sha256_block_data_order'
third_party/boringssl/crypto/libcrypto.a(sha256.c.o): In function `
SHA256_Final':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:235: undefined reference to `sha256_block_data_order'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/../digest/md32_common.h:249: undefined reference to `sha256_block_data_order'
third_party/boringssl/crypto/libcrypto.a(sha512.c.o): In function `
SHA512_Transform':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/sha512.c:174: undefined reference to `sha512_block_data_order'

third_party
/boringssl/crypto/libcrypto.a(sha512.c.o): In function `SHA512_Update':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/sha512.c:206: undefined reference to `
sha512_block_data_order'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/sha512.c:215: undefined reference to `sha512_block_data_order'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/sha512.c:222: undefined reference to `sha512_block_data_order'
third_party/boringssl/crypto/libcrypto.a(sha512.c.o): In function `
SHA512_Final':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/sha512.c:246: undefined reference to `sha512_block_data_order'

third_party
/boringssl/crypto/libcrypto.a(sha512.c.o):/home/<my_name>/grpc_arm/third_party/boringssl/crypto/sha/sha512.c:267: more undefined references to `sha512_block_data_order' follow
third_party/boringssl/crypto/libcrypto.a(e_aes.c.o): In function `
CRYPTO_is_NEON_capable':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/../include/openssl/cpu.h:116: undefined reference to `CRYPTO_is_NEON_capable_at_runtime'

third_party
/boringssl/crypto/libcrypto.a(e_aes.c.o): In function `hwaes_capable':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:123: undefined reference to `
CRYPTO_is_ARMv8_AES_capable'
third_party/boringssl/crypto/libcrypto.a(e_aes.c.o): In function `aes_init_key'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:299: undefined reference to `aes_v8_set_decrypt_key'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:321: undefined reference to `
aes_v8_set_encrypt_key'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:351: undefined reference to `aes_v8_decrypt'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:351: undefined reference to `aes_v8_cbc_encrypt'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:351: undefined reference to `
bsaes_cbc_encrypt'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:351: undefined reference to `aes_v8_encrypt'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:351: undefined reference to `aes_v8_ctr32_encrypt_blocks'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:351: undefined reference to `
bsaes_ctr32_encrypt_blocks'
third_party/boringssl/crypto/libcrypto.a(e_aes.c.o): In function `aes_ctr_set_key'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:427: undefined reference to `aes_v8_set_encrypt_key'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:467: undefined reference to `
aes_v8_encrypt'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:467: undefined reference to `aes_v8_ctr32_encrypt_blocks'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:467: undefined reference to `bsaes_ctr32_encrypt_blocks'
third_party/boringssl/crypto/libcrypto.a(e_aes.c.o): In function `
EVP_has_aes_hardware':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/cipher/e_aes.c:1763: undefined reference to `CRYPTO_is_ARMv8_PMULL_capable'

third_party
/boringssl/crypto/libcrypto.a(gcm.c.o): In function `CRYPTO_gcm128_init':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:491: undefined reference to `
gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:491: undefined reference to `gcm_ghash_4bit'

third_party
/boringssl/crypto/libcrypto.a(gcm.c.o): In function `CRYPTO_gcm128_setiv':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:525: undefined reference to `
gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:533: undefined reference to `gcm_gmult_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:553: undefined reference to `gcm_gmult_4bit'
third_party/boringssl/crypto/libcrypto.a(gcm.c.o): In function `
CRYPTO_gcm128_aad':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:601: undefined reference to `gcm_gmult_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:611: undefined reference to `gcm_ghash_4bit'
third_party/boringssl/crypto/libcrypto.a(gcm.c.o): In function `
CRYPTO_gcm128_encrypt':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:664: undefined reference to `gcm_gmult_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:682: undefined reference to `gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:702: undefined reference to `
gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:731: undefined reference to `gcm_ghash_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:755: undefined reference to `gcm_ghash_4bit'
third_party/boringssl/crypto/libcrypto.a(gcm.c.o): In function `
CRYPTO_gcm128_decrypt':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:824: undefined reference to `gcm_gmult_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:844: undefined reference to `gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:867: undefined reference to `
gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:878: undefined reference to `gcm_ghash_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:901: undefined reference to `gcm_ghash_4bit'
third_party/boringssl/crypto/libcrypto.a(gcm.c.o): In function `
CRYPTO_gcm128_encrypt_ctr32':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:990: undefined reference to `gcm_gmult_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1008: undefined reference to `gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1023: undefined reference to `
gcm_ghash_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1043: undefined reference to `gcm_ghash_4bit'

third_party
/boringssl/crypto/libcrypto.a(gcm.c.o): In function `CRYPTO_gcm128_decrypt_ctr32':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1099: undefined reference to `
gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1119: undefined reference to `gcm_gmult_4bit'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1127: undefined reference to `gcm_ghash_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1145: undefined reference to `
gcm_ghash_4bit'
third_party/boringssl/crypto/libcrypto.a(gcm.c.o): In function `CRYPTO_gcm128_finish'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1201: undefined reference to `gcm_gmult_4bit'
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/modes/gcm.c:1221: undefined reference to `
gcm_gmult_4bit'
third_party/boringssl/crypto/libcrypto.a(aes.c.o): In function `hwaes_capable'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1066: undefined reference to `CRYPTO_is_ARMv8_AES_capable'
third_party/boringssl/crypto/libcrypto.a(aes.c.o): In function `
AES_encrypt':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1109: undefined reference to `aes_v8_encrypt'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1111: undefined reference to `asm_AES_encrypt'
third_party/boringssl/crypto/libcrypto.a(aes.c.o): In function `
AES_decrypt':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1118: undefined reference to `aes_v8_decrypt'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1120: undefined reference to `asm_AES_decrypt'
third_party/boringssl/crypto/libcrypto.a(aes.c.o): In function `
AES_set_encrypt_key':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1127: undefined reference to `aes_v8_set_encrypt_key'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1129: undefined reference to `asm_AES_set_encrypt_key'
third_party/boringssl/crypto/libcrypto.a(aes.c.o): In function `
AES_set_decrypt_key':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1136: undefined reference to `aes_v8_set_decrypt_key'

/home/<my_name>/grpc_arm/third_party/boringssl/crypto/aes/aes.c:1138: undefined reference to `asm_AES_set_decrypt_key'
third_party/boringssl/crypto/libcrypto.a(montgomery.c.o): In function `
BN_mod_mul_montgomery':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/bn/montgomery.c:525: undefined reference to `bn_mul_mont'

third_party
/boringssl/crypto/libcrypto.a(chacha_generic.c.o): In function `CRYPTO_is_NEON_capable':
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/../include/openssl/cpu.h:116: undefined reference to `
CRYPTO_is_NEON_capable_at_runtime'
third_party/boringssl/crypto/libcrypto.a(chacha_generic.c.o): In function `CRYPTO_chacha_20'
:
/home/<my_name>/grpc_arm/third_party/boringssl/crypto/chacha/chacha_generic.c:96: undefined reference to `CRYPTO_chacha_20_neon'
collect2: error: ld returned 1 exit status
make[2]: *** [grpc_create_jwt] Error 1
make[1]: *** [CMakeFiles/grpc_create_jwt.dir/all] Error 2
make: *** [all] Error 2

I think it is linked with OpenSSL, but I don't know how to link my corss-compiled openssl to the makefile.
Thank you.

Adrian 51362

unread,
Mar 2, 2023, 2:08:22 AM3/2/23
to grpc.io
Hello everyone

Might be interesting when running into this problem:

Had the same issue while cross-compiling gRPC v1.46.7 for ARM using gcc-linaro-7.4.1 (Ubuntu 22.04).
With the script, it ran through the cross-compilion without errors by using OpenSSL instead of bssl.

Best regards
Adrian

Arun R Krishnan

unread,
Jan 4, 2024, 12:33:31 PMJan 4
to grpc.io
Hi ,  

Is there any progress on this issue ? ,got any ideas? we also facing same error.
Disclaimer: © 2024 VVDN Technologies Pvt. Ltd. This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely for the use of the addressee(s). If you are not the intended recipient, please notify the sender by e-mail and delete the original message. Further, you are not to copy, disclose, or distribute this e-mail or its contents to any other person and any such actions are unlawful.


Arun R Krishnan

unread,
Jan 4, 2024, 12:33:38 PMJan 4
to grpc.io
Hi ,

we also used this same script and same grpc version v1.46.7 for ARM arm-linux-gnueabi-g++ and arm-linux-gnueabi-gcc . we still facing same issue. could you please help us to solve this issue??


libcrypto.a(bcm.c.o): In function `vpaes_ctr32_encrypt_blocks_with_bsaes':
bcm.c:(.text+0x8c04): undefined reference to `vpaes_encrypt_key_to_bsaes'
bcm.c:(.text+0x8c1c): undefined reference to `bsaes_ctr32_encrypt_blocks'
bcm.c:(.text+0x8c88): undefined reference to `vpaes_ctr32_encrypt_blocks'
bcm.c:(.text+0x8ca8): undefined reference to `vpaes_ctr32_encrypt_blocks'
libcrypto.a(bcm.c.o): In function `sha256_final_impl':
bcm.c:(.text+0x11a8c): undefined reference to `sha256_block_data_order'
bcm.c:(.text+0x11af8): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o): In function `sha512_final_impl':
bcm.c:(.text+0x133d0): undefined reference to `sha512_block_data_order'
bcm.c:(.text+0x13470): undefined reference to `sha512_block_data_order'
libcrypto.a(bcm.c.o): In function `sha224_update':
bcm.c:(.text+0x139fc): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o): In function `sha256_update':
bcm.c:(.text+0x13a58): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o): In function `sha1_update':
bcm.c:(.text+0x13ab4): undefined reference to `sha1_block_data_order'
libcrypto.a(bcm.c.o): In function `AES_encrypt':
bcm.c:(.text+0x14a0c): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x14a20): undefined reference to `aes_hw_encrypt'
libcrypto.a(bcm.c.o): In function `AES_decrypt':
bcm.c:(.text+0x165bc): undefined reference to `vpaes_decrypt'
bcm.c:(.text+0x165d0): undefined reference to `aes_hw_decrypt'
libcrypto.a(bcm.c.o): In function `aes_unwrap_key_inner.part.16':
bcm.c:(.text+0x16704): undefined reference to `aes_hw_decrypt'
bcm.c:(.text+0x1670c): undefined reference to `vpaes_decrypt'
libcrypto.a(bcm.c.o): In function `md5_sha1_update':
bcm.c:(.text+0x171a0): undefined reference to `sha1_block_data_order'
libcrypto.a(bcm.c.o): In function `AES_set_encrypt_key':
bcm.c:(.text+0x1897c): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x18990): undefined reference to `aes_hw_set_encrypt_key'
libcrypto.a(bcm.c.o): In function `AES_set_decrypt_key':
bcm.c:(.text+0x189ec): undefined reference to `vpaes_set_decrypt_key'
bcm.c:(.text+0x18a00): undefined reference to `aes_hw_set_decrypt_key'
libcrypto.a(bcm.c.o): In function `aes_init_key':
bcm.c:(.text+0x18a68): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x18ac0): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x18b70): undefined reference to `aes_hw_set_decrypt_key'
bcm.c:(.text+0x18c20): undefined reference to `vpaes_set_decrypt_key'
bcm.c:(.text+0x18c4c): undefined reference to `vpaes_set_decrypt_key'
bcm.c:(.text+0x18c78): undefined reference to `vpaes_decrypt_key_to_bsaes'
bcm.c:(.text+0x18c84): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x18c88): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x18c9c): undefined reference to `aes_hw_decrypt'
bcm.c:(.text+0x18ca0): undefined reference to `aes_hw_cbc_encrypt'
bcm.c:(.text+0x18ca4): undefined reference to `aes_hw_ctr32_encrypt_blocks'
bcm.c:(.text+0x18cb0): undefined reference to `vpaes_decrypt'
bcm.c:(.text+0x18cb4): undefined reference to `bsaes_cbc_encrypt'
libcrypto.a(bcm.c.o): In function `ctr_drbg_update.part.131':
bcm.c:(.text+0x18f5c): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x18f84): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x18fdc): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x18fe4): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x18fe8): undefined reference to `aes_hw_ctr32_encrypt_blocks'
libcrypto.a(bcm.c.o): In function `CTR_DRBG_init.part.132':
bcm.c:(.text+0x1952c): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x195cc): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x19648): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x1964c): undefined reference to `aes_hw_ctr32_encrypt_blocks'
bcm.c:(.text+0x19650): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `ctr_drbg_update.part.131.constprop.221':
bcm.c:(.text+0x1981c): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x19844): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x1989c): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x198a4): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x198a8): undefined reference to `aes_hw_ctr32_encrypt_blocks'
libcrypto.a(bcm.c.o): In function `AES_wrap_key':
bcm.c:(.text+0x199fc): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x19a04): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `AES_unwrap_key_padded':
bcm.c:(.text+0x19fc0): undefined reference to `aes_hw_decrypt'
bcm.c:(.text+0x19fc8): undefined reference to `vpaes_decrypt'
libcrypto.a(bcm.c.o): In function `AES_ecb_encrypt':
bcm.c:(.text+0x1a034): undefined reference to `aes_hw_decrypt'
bcm.c:(.text+0x1a068): undefined reference to `vpaes_decrypt'
bcm.c:(.text+0x1a07c): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x1a084): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `AES_cbc_encrypt':
bcm.c:(.text+0x1a110): undefined reference to `aes_hw_cbc_encrypt'
libcrypto.a(bcm.c.o): In function `AES_ofb128_encrypt':
bcm.c:(.text+0x1a334): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x1a33c): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x1a4b0): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x1a4c4): undefined reference to `aes_hw_encrypt'
libcrypto.a(bcm.c.o): In function `AES_cfb128_encrypt':
bcm.c:(.text+0x1ab78): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x1ab8c): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x1ab94): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x1ab9c): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x1ad40): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x1ad64): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x1ad74): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x1af64): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `bn_mod_mul_montgomery_small':
bcm.c:(.text+0x21818): undefined reference to `bn_mul_mont'
libcrypto.a(bcm.c.o): In function `BN_mod_mul_montgomery':
bcm.c:(.text+0x24554): undefined reference to `bn_mul_mont'
libcrypto.a(bcm.c.o): In function `BN_to_montgomery':
bcm.c:(.text+0x249fc): undefined reference to `bn_mul_mont'
libcrypto.a(bcm.c.o): In function `AES_ctr128_encrypt':
bcm.c:(.text+0x3a490): undefined reference to `aes_hw_ctr32_encrypt_blocks'
bcm.c:(.text+0x3a498): undefined reference to `vpaes_ctr32_encrypt_blocks'
libcrypto.a(bcm.c.o): In function `CRYPTO_ghash_init':
bcm.c:(.text+0x3a5f8): undefined reference to `gcm_init_v8'
bcm.c:(.text+0x3a640): undefined reference to `gcm_init_neon'
bcm.c:(.text+0x3a700): undefined reference to `gcm_gmult_v8'
bcm.c:(.text+0x3a704): undefined reference to `gcm_ghash_v8'
bcm.c:(.text+0x3a708): undefined reference to `gcm_gmult_neon'
bcm.c:(.text+0x3a70c): undefined reference to `gcm_ghash_neon'
libcrypto.a(bcm.c.o): In function `aes_ctr_set_key':
bcm.c:(.text+0x3a764): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x3a7b0): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3a838): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x3a894): undefined reference to `vpaes_encrypt'
bcm.c:(.text+0x3a998): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3a99c): undefined reference to `aes_hw_ctr32_encrypt_blocks'
bcm.c:(.text+0x3a9a0): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `CRYPTO_gcm128_init_key':
bcm.c:(.text+0x3abe0): undefined reference to `gcm_init_v8'
bcm.c:(.text+0x3ac34): undefined reference to `gcm_init_neon'
bcm.c:(.text+0x3ace0): undefined reference to `gcm_gmult_v8'
bcm.c:(.text+0x3ace4): undefined reference to `gcm_ghash_v8'
bcm.c:(.text+0x3ace8): undefined reference to `gcm_gmult_neon'
bcm.c:(.text+0x3acec): undefined reference to `gcm_ghash_neon'
libcrypto.a(bcm.c.o): In function `aead_aes_gcm_init':
bcm.c:(.text+0x3adb4): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x3ae00): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3ae6c): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x3af94): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3af98): undefined reference to `aes_hw_ctr32_encrypt_blocks'
bcm.c:(.text+0x3af9c): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `aead_aes_gcm_tls12_init':
bcm.c:(.text+0x3b040): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x3b084): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3b13c): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x3b228): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3b22c): undefined reference to `aes_hw_ctr32_encrypt_blocks'
bcm.c:(.text+0x3b238): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `aead_aes_gcm_tls13_init':
bcm.c:(.text+0x3b2dc): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x3b320): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3b3d8): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x3b4c4): undefined reference to `aes_hw_encrypt'
bcm.c:(.text+0x3b4c8): undefined reference to `aes_hw_ctr32_encrypt_blocks'
bcm.c:(.text+0x3b4d4): undefined reference to `vpaes_encrypt'
libcrypto.a(bcm.c.o): In function `CRYPTO_POLYVAL_init':
bcm.c:(.text+0x3f4ec): undefined reference to `gcm_init_v8'
bcm.c:(.text+0x3f544): undefined reference to `gcm_init_neon'
bcm.c:(.text+0x3f5f4): undefined reference to `gcm_gmult_v8'
bcm.c:(.text+0x3f5f8): undefined reference to `gcm_ghash_v8'
bcm.c:(.text+0x3f5fc): undefined reference to `gcm_gmult_neon'
bcm.c:(.text+0x3f600): undefined reference to `gcm_ghash_neon'
libcrypto.a(bcm.c.o): In function `BN_BLINDING_invert':
bcm.c:(.text+0x44e10): undefined reference to `bn_mul_mont'
libcrypto.a(bcm.c.o): In function `SHA1_Transform':
bcm.c:(.text+0x4abb4): undefined reference to `sha1_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA1_Update':
bcm.c:(.text+0x4ac18): undefined reference to `sha1_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA1_Final':
bcm.c:(.text+0x4ac7c): undefined reference to `sha1_block_data_order'
bcm.c:(.text+0x4ace4): undefined reference to `sha1_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA1':
bcm.c:(.text+0x4af40): undefined reference to `sha1_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA224':
bcm.c:(.text+0x4b16c): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA256':
bcm.c:(.text+0x4b290): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA256_Transform':
bcm.c:(.text+0x4b298): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA256_Update':
bcm.c:(.text+0x4b2fc): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA224_Update':
bcm.c:(.text+0x4b360): undefined reference to `sha256_block_data_order'
libcrypto.a(bcm.c.o):bcm.c:(.text+0x4b36c): more undefined references to `sha256_block_data_order' follow
libcrypto.a(bcm.c.o): In function `SHA384':
bcm.c:(.text+0x4b7a0): undefined reference to `sha512_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA512':
bcm.c:(.text+0x4b950): undefined reference to `sha512_block_data_order'
libcrypto.a(bcm.c.o): In function `boringssl_fips_self_test':
bcm.c:(.text+0x4c008): undefined reference to `vpaes_set_encrypt_key'
bcm.c:(.text+0x4c140): undefined reference to `aes_hw_cbc_encrypt'
bcm.c:(.text+0x4c15c): undefined reference to `aes_hw_set_encrypt_key'
bcm.c:(.text+0x4c168): undefined reference to `vpaes_set_decrypt_key'
bcm.c:(.text+0x4c534): undefined reference to `aes_hw_set_decrypt_key'
libcrypto.a(bcm.c.o): In function `SHA512_256':
bcm.c:(.text+0x4d494): undefined reference to `sha512_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA512_Transform':
bcm.c:(.text+0x4d50c): undefined reference to `sha512_block_data_order'
libcrypto.a(bcm.c.o): In function `SHA512_Update':
bcm.c:(.text+0x4d58c): undefined reference to `sha512_block_data_order'
bcm.c:(.text+0x4d5d8): undefined reference to `sha512_block_data_order'
libcrypto.a(bcm.c.o): In function `ECDSA_do_sign':
bcm.c:(.text+0x4d874): undefined reference to `sha512_block_data_order'
libcrypto.a(curve25519.c.o): In function `X25519_keypair':
curve25519.c:(.text+0x16150): undefined reference to `x25519_NEON'
libcrypto.a(curve25519.c.o): In function `X25519':
curve25519.c:(.text+0x161a8): undefined reference to `x25519_NEON'
libcrypto.a(curve25519.c.o): In function `X25519_public_from_private':
curve25519.c:(.text+0x161f4): undefined reference to `x25519_NEON'
libcrypto.a(poly1305_arm.c.o): In function `CRYPTO_poly1305_init_neon':
poly1305_arm.c:(.text+0x688): undefined reference to `openssl_poly1305_neon2_addmulmod'
poly1305_arm.c:(.text+0x69c): undefined reference to `openssl_poly1305_neon2_addmulmod'
libcrypto.a(poly1305_arm.c.o): In function `CRYPTO_poly1305_update_neon':
poly1305_arm.c:(.text+0x87c): undefined reference to `openssl_poly1305_neon2_blocks'
poly1305_arm.c:(.text+0x9d0): undefined reference to `openssl_poly1305_neon2_addmulmod'
libcrypto.a(poly1305_arm.c.o): In function `CRYPTO_poly1305_finish_neon':
poly1305_arm.c:(.text+0xb40): undefined reference to `openssl_poly1305_neon2_addmulmod'
poly1305_arm.c:(.text+0xe00): undefined reference to `openssl_poly1305_neon2_addmulmod'
poly1305_arm.c:(.text+0xe4c): undefined reference to `openssl_poly1305_neon2_addmulmod'
libcrypto.a(chacha.c.o): In function `CRYPTO_chacha_20':
chacha.c:(.text+0x4e4): undefined reference to `ChaCha20_ctr32'

collect2: error: ld returned 1 exit status
Reply all
Reply to author
Forward
0 new messages