Этот метод вызова обернут «#ifndef OPENSSL_NO_DEPRECATED», который выглядит как код, который был портирован обратно из 1.1.0 ветви.
История изменений 1.1.0 подразумевает, что они меняли код, чтобы улучшить управление уровнем API OpenSSL. Вы можете попробовать добавить «без устаревших» к вашим параметрам «configure», но я сомневаюсь в этом, поскольку он выглядит как вариант конфигурации 1.1.0. В качестве альтернативы исправить источник, чтобы удалить новые 3 строки кода, так как ваша предыдущая версия не вызывала устаревший метод в любом случае.
--- a/crypto/o_init.c
+++ b/crypto/o_init.c
@@ -73,9 +73,6 @@
done = 1;
#ifdef OPENSSL_FIPS
FIPS_set_locking_callbacks(CRYPTO_lock, CRYPTO_add_lock);
-# ifndef OPENSSL_NO_DEPRECATED
- FIPS_crypto_set_id_callback(CRYPTO_thread_id);
-# endif
FIPS_set_error_callbacks(ERR_put_error, ERR_add_error_vdata);
FIPS_set_malloc_callbacks(CRYPTO_malloc, CRYPTO_free);
RAND_init_fips();
Просьба показать, как вы настроили библиотеку. То есть, что такое строка конфигурации, и что такое настройка вывода. Вопрос также может быть полезен, поэтому мы даем ответ на то, с чем вы столкнулись. – jww
Удалось устранить проблему, добавив в CFLAG -Wno-error = implicit-function-declaration. –
Я уверен, что это не проблема. Я полагаю, вы просто переместили проблему. – jww