- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
尝试使用 gcc (Debian 6.2.1-7) 6.2.1 20161215 编译 Python 3.4.3 时出现以下错误:
Failed to build these modules:
_hashlib _ssl
再次运行 make
时,我得到了更多信息输出:
$ make
running build
running build_ext
INFO: Can't locate Tcl/Tk libs and/or headers
building '_ssl' extension
gcc -pthread -fPIC -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Werror=declaration-after-statement -I./Include -I. -IInclude -I/usr/include/x86_64-linux-gnu -I/usr/local/include -I/home/jj/src/Python-3.4.3/Include -I/home/jj/src/Python-3.4.3 -c /home/jj/src/Python-3.4.3/Modules/_ssl.c -o build/temp.linux-x86_64-3.4/home/jj/src/Python-3.4.3/Modules/_ssl.o
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘_create_tuple_for_X509_NAME’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:694:35: error: dereferencing pointer to incomplete type ‘X509_NAME_ENTRY {aka struct X509_name_entry_st}’
if (rdn_level != entry->set) {
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘_get_peer_alt_names’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:814:16: error: dereferencing pointer to incomplete type ‘X509_EXTENSION {aka struct X509_extension_st}’
p = ext->value->data;
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:886:17: warning: ‘ASN1_STRING_data’ is deprecated [-Wdeprecated-declarations]
v = PyUnicode_FromStringAndSize((char *)ASN1_STRING_data(as),
^
In file included from /usr/include/openssl/bn.h:31:0,
from /usr/include/openssl/asn1.h:24,
from /usr/include/openssl/rsa.h:16,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:59:
/usr/include/openssl/asn1.h:553:1: note: declared here
DEPRECATEDIN_1_1_0(unsigned char *ASN1_STRING_data(ASN1_STRING *x))
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘_get_crl_dp’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:1039:22: error: dereferencing pointer to incomplete type ‘X509 {aka struct x509_st}’
dps = certificate->crldp;
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘PySSL_compression’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:1431:43: error: dereferencing pointer to incomplete type ‘COMP_METHOD {aka const struct comp_method_st}’
if (comp_method == NULL || comp_method->type == NID_undef)
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘context_new’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2012:9: warning: ‘TLSv1_method’ is deprecated [-Wdeprecated-declarations]
ctx = SSL_CTX_new(TLSv1_method());
^~~
In file included from /usr/include/openssl/ct.h:13:0,
from /usr/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/include/openssl/ssl.h:1596:1: note: declared here
DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_method(void)) /* TLSv1.0 */
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2015:9: warning: ‘TLSv1_1_method’ is deprecated [-Wdeprecated-declarations]
ctx = SSL_CTX_new(TLSv1_1_method());
^~~
In file included from /usr/include/openssl/ct.h:13:0,
from /usr/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/include/openssl/ssl.h:1602:1: note: declared here
DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_method(void)) /* TLSv1.1 */
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2017:9: warning: ‘TLSv1_2_method’ is deprecated [-Wdeprecated-declarations]
ctx = SSL_CTX_new(TLSv1_2_method());
^~~
In file included from /usr/include/openssl/ct.h:13:0,
from /usr/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/include/openssl/ssl.h:1608:1: note: declared here
DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_method(void)) /* TLSv1.2 */
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2025:27: warning: implicit declaration of function ‘SSLv2_method’ [-Wimplicit-function-declaration]
ctx = SSL_CTX_new(SSLv2_method());
^~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2025:27: warning: passing argument 1 of ‘SSL_CTX_new’ makes pointer from integer without a cast [-Wint-conversion]
In file included from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:0:
/usr/include/openssl/ssl.h:1302:17: note: expected ‘const SSL_METHOD * {aka const struct ssl_method_st *}’ but argument is of type ‘int’
__owur SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth);
^~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘get_verify_flags’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2275:46: error: dereferencing pointer to incomplete type ‘X509_STORE {aka struct x509_store_st}’
flags = X509_VERIFY_PARAM_get_flags(store->param);
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘load_cert_chain’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2468:48: error: dereferencing pointer to incomplete type ‘SSL_CTX {aka struct ssl_ctx_st}’
pem_password_cb *orig_passwd_cb = self->ctx->default_passwd_callback;
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘cert_store_stats’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3055:20: error: dereferencing pointer to incomplete type ‘X509_OBJECT {aka struct x509_object_st}’
switch (obj->type) {
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3065:18: error: ‘X509_LU_PKEY’ undeclared (first use in this function)
case X509_LU_PKEY:
^~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3065:18: note: each undeclared identifier is reported only once for each function it appears in
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘PySSL_RAND’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3275:9: warning: ‘RAND_pseudo_bytes’ is deprecated [-Wdeprecated-declarations]
ok = RAND_pseudo_bytes((unsigned char*)PyBytes_AS_STRING(bytes), len);
^~
In file included from /usr/include/openssl/ct.h:13:0,
from /usr/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/include/openssl/rand.h:47:1: note: declared here
DEPRECATEDIN_1_1_0(int RAND_pseudo_bytes(unsigned char *buf, int num))
^
At top level:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3808:13: warning: ‘_ssl_thread_locking_function’ defined but not used [-Wunused-function]
static void _ssl_thread_locking_function
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3795:1: warning: ‘_ssl_threadid_callback’ defined but not used [-Wunused-function]
_ssl_threadid_callback(CRYPTO_THREADID *id)
^~~~~~~~~~~~~~~~~~~~~~
building '_hashlib' extension
gcc -pthread -fPIC -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Werror=declaration-after-statement -I./Include -I. -IInclude -I/usr/include/x86_64-linux-gnu -I/usr/local/include -I/home/jj/src/Python-3.4.3/Include -I/home/jj/src/Python-3.4.3 -c /home/jj/src/Python-3.4.3/Modules/_hashopenssl.c -o build/temp.linux-x86_64-3.4/home/jj/src/Python-3.4.3/Modules/_hashopenssl.o
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:42:26: error: field ‘ctx’ has incomplete type
EVP_MD_CTX ctx; /* OpenSSL message digest context */
^~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘EVP_dealloc’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:109:5: warning: implicit declaration of function ‘EVP_MD_CTX_cleanup’ [-Wimplicit-function-declaration]
EVP_MD_CTX_cleanup(&self->ctx);
^~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘EVP_digest’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:145:16: error: storage size of ‘temp_ctx’ isn’t known
EVP_MD_CTX temp_ctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:145:16: warning: unused variable ‘temp_ctx’ [-Wunused-variable]
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘EVP_hexdigest’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:165:16: error: storage size of ‘temp_ctx’ isn’t known
EVP_MD_CTX temp_ctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:165:16: warning: unused variable ‘temp_ctx’ [-Wunused-variable]
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘PKCS5_PBKDF2_HMAC_fast’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:14: error: storage size of ‘hctx_tpl’ isn’t known
HMAC_CTX hctx_tpl, hctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:24: error: storage size of ‘hctx’ isn’t known
HMAC_CTX hctx_tpl, hctx;
^~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:503:5: warning: implicit declaration of function ‘HMAC_CTX_init’ [-Wimplicit-function-declaration]
HMAC_CTX_init(&hctx_tpl);
^~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:508:9: warning: implicit declaration of function ‘HMAC_CTX_cleanup’ [-Wimplicit-function-declaration]
HMAC_CTX_cleanup(&hctx_tpl);
^~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:24: warning: unused variable ‘hctx’ [-Wunused-variable]
HMAC_CTX hctx_tpl, hctx;
^~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:14: warning: unused variable ‘hctx_tpl’ [-Wunused-variable]
HMAC_CTX hctx_tpl, hctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: At top level:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_md5_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:57:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(md5)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha1_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:58:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha1)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha224_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:60:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha224)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha256_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:61:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha256)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha384_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:62:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha384)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha512_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:63:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha512)
^~~~~~~~~~~~~~~~~~~~~
如您所见,configure
正确选择了我的 OpenSSL 安装位置 (/usr/include/openssl
),因此这个问题不是 How do I compile Python 3.4 with custom OpenSSL? 的重复.
为了解决这个错误,我尝试从源代码安装 OpenSSL 到 /usr/local
,然后重新运行 Python 的 configure
和 make
:
$ make
running build
running build_ext
INFO: Can't locate Tcl/Tk libs and/or headers
building '_ssl' extension
gcc -pthread -fPIC -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Werror=declaration-after-statement -I./Include -I. -IInclude -I/usr/include/x86_64-linux-gnu -I/usr/local/include -I/home/jj/src/Python-3.4.3/Include -I/home/jj/src/Python-3.4.3 -c /home/jj/src/Python-3.4.3/Modules/_ssl.c -o build/temp.linux-x86_64-3.4/home/jj/src/Python-3.4.3/Modules/_ssl.o
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘_create_tuple_for_X509_NAME’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:694:35: error: dereferencing pointer to incomplete type ‘X509_NAME_ENTRY {aka struct X509_name_entry_st}’
if (rdn_level != entry->set) {
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘_get_peer_alt_names’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:814:16: error: dereferencing pointer to incomplete type ‘X509_EXTENSION {aka struct X509_extension_st}’
p = ext->value->data;
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:886:17: warning: ‘ASN1_STRING_data’ is deprecated [-Wdeprecated-declarations]
v = PyUnicode_FromStringAndSize((char *)ASN1_STRING_data(as),
^
In file included from /usr/local/include/openssl/bn.h:31:0,
from /usr/local/include/openssl/asn1.h:24,
from /usr/local/include/openssl/rsa.h:16,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:59:
/usr/local/include/openssl/asn1.h:553:1: note: declared here
DEPRECATEDIN_1_1_0(unsigned char *ASN1_STRING_data(ASN1_STRING *x))
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘_get_crl_dp’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:1039:22: error: dereferencing pointer to incomplete type ‘X509 {aka struct x509_st}’
dps = certificate->crldp;
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘PySSL_compression’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:1431:43: error: dereferencing pointer to incomplete type ‘COMP_METHOD {aka const struct comp_method_st}’
if (comp_method == NULL || comp_method->type == NID_undef)
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘context_new’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2012:9: warning: ‘TLSv1_method’ is deprecated [-Wdeprecated-declarations]
ctx = SSL_CTX_new(TLSv1_method());
^~~
In file included from /usr/local/include/openssl/ct.h:13:0,
from /usr/local/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/local/include/openssl/ssl.h:1617:1: note: declared here
DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_method(void)) /* TLSv1.0 */
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2015:9: warning: ‘TLSv1_1_method’ is deprecated [-Wdeprecated-declarations]
ctx = SSL_CTX_new(TLSv1_1_method());
^~~
In file included from /usr/local/include/openssl/ct.h:13:0,
from /usr/local/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/local/include/openssl/ssl.h:1623:1: note: declared here
DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_method(void)) /* TLSv1.1 */
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2017:9: warning: ‘TLSv1_2_method’ is deprecated [-Wdeprecated-declarations]
ctx = SSL_CTX_new(TLSv1_2_method());
^~~
In file included from /usr/local/include/openssl/ct.h:13:0,
from /usr/local/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/local/include/openssl/ssl.h:1629:1: note: declared here
DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_method(void)) /* TLSv1.2 */
^
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2025:27: warning: implicit declaration of function ‘SSLv2_method’ [-Wimplicit-function-declaration]
ctx = SSL_CTX_new(SSLv2_method());
^~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2025:27: warning: passing argument 1 of ‘SSL_CTX_new’ makes pointer from integer without a cast [-Wint-conversion]
In file included from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:0:
/usr/local/include/openssl/ssl.h:1319:17: note: expected ‘const SSL_METHOD * {aka const struct ssl_method_st *}’ but argument is of type ‘int’
__owur SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth);
^~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘get_verify_flags’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2275:46: error: dereferencing pointer to incomplete type ‘X509_STORE {aka struct x509_store_st}’
flags = X509_VERIFY_PARAM_get_flags(store->param);
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘load_cert_chain’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:2468:48: error: dereferencing pointer to incomplete type ‘SSL_CTX {aka struct ssl_ctx_st}’
pem_password_cb *orig_passwd_cb = self->ctx->default_passwd_callback;
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘cert_store_stats’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3055:20: error: dereferencing pointer to incomplete type ‘X509_OBJECT {aka struct x509_object_st}’
switch (obj->type) {
^~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3065:18: error: ‘X509_LU_PKEY’ undeclared (first use in this function)
case X509_LU_PKEY:
^~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3065:18: note: each undeclared identifier is reported only once for each function it appears in
/home/jj/src/Python-3.4.3/Modules/_ssl.c: In function ‘PySSL_RAND’:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3275:9: warning: ‘RAND_pseudo_bytes’ is deprecated [-Wdeprecated-declarations]
ok = RAND_pseudo_bytes((unsigned char*)PyBytes_AS_STRING(bytes), len);
^~
In file included from /usr/local/include/openssl/ct.h:13:0,
from /usr/local/include/openssl/ssl.h:61,
from /home/jj/src/Python-3.4.3/Modules/_ssl.c:64:
/usr/local/include/openssl/rand.h:47:1: note: declared here
DEPRECATEDIN_1_1_0(int RAND_pseudo_bytes(unsigned char *buf, int num))
^
At top level:
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3808:13: warning: ‘_ssl_thread_locking_function’ defined but not used [-Wunused-function]
static void _ssl_thread_locking_function
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_ssl.c:3795:1: warning: ‘_ssl_threadid_callback’ defined but not used [-Wunused-function]
_ssl_threadid_callback(CRYPTO_THREADID *id)
^~~~~~~~~~~~~~~~~~~~~~
building '_hashlib' extension
gcc -pthread -fPIC -Wno-unused-result -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Werror=declaration-after-statement -I./Include -I. -IInclude -I/usr/include/x86_64-linux-gnu -I/usr/local/include -I/home/jj/src/Python-3.4.3/Include -I/home/jj/src/Python-3.4.3 -c /home/jj/src/Python-3.4.3/Modules/_hashopenssl.c -o build/temp.linux-x86_64-3.4/home/jj/src/Python-3.4.3/Modules/_hashopenssl.o
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:42:26: error: field ‘ctx’ has incomplete type
EVP_MD_CTX ctx; /* OpenSSL message digest context */
^~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘EVP_dealloc’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:109:5: warning: implicit declaration of function ‘EVP_MD_CTX_cleanup’ [-Wimplicit-function-declaration]
EVP_MD_CTX_cleanup(&self->ctx);
^~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘EVP_digest’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:145:16: error: storage size of ‘temp_ctx’ isn’t known
EVP_MD_CTX temp_ctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:145:16: warning: unused variable ‘temp_ctx’ [-Wunused-variable]
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘EVP_hexdigest’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:165:16: error: storage size of ‘temp_ctx’ isn’t known
EVP_MD_CTX temp_ctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:165:16: warning: unused variable ‘temp_ctx’ [-Wunused-variable]
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: In function ‘PKCS5_PBKDF2_HMAC_fast’:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:14: error: storage size of ‘hctx_tpl’ isn’t known
HMAC_CTX hctx_tpl, hctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:24: error: storage size of ‘hctx’ isn’t known
HMAC_CTX hctx_tpl, hctx;
^~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:503:5: warning: implicit declaration of function ‘HMAC_CTX_init’ [-Wimplicit-function-declaration]
HMAC_CTX_init(&hctx_tpl);
^~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:508:9: warning: implicit declaration of function ‘HMAC_CTX_cleanup’ [-Wimplicit-function-declaration]
HMAC_CTX_cleanup(&hctx_tpl);
^~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:24: warning: unused variable ‘hctx’ [-Wunused-variable]
HMAC_CTX hctx_tpl, hctx;
^~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:497:14: warning: unused variable ‘hctx_tpl’ [-Wunused-variable]
HMAC_CTX hctx_tpl, hctx;
^~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c: At top level:
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_md5_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:57:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(md5)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha1_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:58:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha1)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha224_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:60:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha224)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha256_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:61:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha256)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha384_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:62:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha384)
^~~~~~~~~~~~~~~~~~~~~
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:54:23: error: storage size of ‘CONST_new_sha512_ctx’ isn’t known
static EVP_MD_CTX CONST_new_ ## Name ## _ctx; \
^
/home/jj/src/Python-3.4.3/Modules/_hashopenssl.c:63:1: note: in expansion of macro ‘DEFINE_CONSTS_FOR_NEW’
DEFINE_CONSTS_FOR_NEW(sha512)
^~~~~~~~~~~~~~~~~~~~~
虽然您可以看到 configure
现在使用了来自 /usr/local
的 OpenSSL 安装,但还是会出现同样的错误。为什么会出现这些错误,我该如何解决?
最佳答案
我必须在 fedora 26 中安装 compat-openssl10-devel
才能让它工作。完整的命令是 sudo dnf install compat-openssl10-devel --allowerasing
。似乎在 openssl 库 API 中有一个向后不兼容的更新导致了这一点。看到这个:https://wiki.openssl.org/index.php/OpenSSL_1.1.0_Changes#Compatibility_Layer
关于Python 3.4.3 无法构建这些模块 : _hashlib _ssl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41443988/
我通过 spring ioc 编写了一些 Rest 应用程序。但我无法解决这个问题。这是我的异常(exception): org.springframework.beans.factory.BeanC
我对 TestNG、Spring 框架等完全陌生,我正在尝试使用注释 @Value通过 @Configuration 访问配置文件注释。 我在这里想要实现的目标是让控制台从配置文件中写出“hi”,通过
为此工作了几个小时。我完全被难住了。 这是 CS113 的实验室。 如果用户在程序(二进制计算器)结束时选择继续,我们需要使用 goto 语句来到达程序的顶部。 但是,我们还需要释放所有分配的内存。
我正在尝试使用 ffmpeg 库构建一个小的 C 程序。但是我什至无法使用 avformat_open_input() 打开音频文件设置检查错误代码的函数后,我得到以下输出: Error code:
使用 Spring Initializer 创建一个简单的 Spring boot。我只在可用选项下选择 DevTools。 创建项目后,无需对其进行任何更改,即可正常运行程序。 现在,当我尝试在项目
所以我只是在 Mac OS X 中通过 brew 安装了 qt。但是它无法链接它。当我尝试运行 brew link qt 或 brew link --overwrite qt 我得到以下信息: ton
我在提交和 pull 时遇到了问题:在提交的 IDE 中,我看到: warning not all local changes may be shown due to an error: unable
我跑 man gcc | grep "-L" 我明白了 Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more inf
我有一段代码,旨在接收任何 URL 并将其从网络上撕下来。到目前为止,它运行良好,直到有人给了它这个 URL: http://www.aspensurgical.com/static/images/a
在过去的 5 个小时里,我一直在尝试在我的服务器上设置 WireGuard,但在完成所有设置后,我无法 ping IP 或解析域。 下面是服务器配置 [Interface] Address = 10.
我正在尝试在 GitLab 中 fork 我的一个私有(private)项目,但是当我按下 fork 按钮时,我会收到以下信息: No available namespaces to fork the
我这里遇到了一些问题。我是 node.js 和 Rest API 的新手,但我正在尝试自学。我制作了 REST API,使用 MongoDB 与我的数据库进行通信,我使用 Postman 来测试我的路
下面的代码在控制台中给出以下消息: Uncaught DOMException: Failed to execute 'appendChild' on 'Node': The new child el
我正在尝试调用一个新端点来显示数据,我意识到在上一组有效的数据中,它在数据周围用一对额外的“[]”括号进行控制台,我认为这就是问题是,而新端点不会以我使用数据的方式产生它! 这是 NgFor 失败的原
我正在尝试将我的 Symfony2 应用程序部署到我的 Azure Web 应用程序,但遇到了一些麻烦。 推送到远程时,我在终端中收到以下消息 remote: Updating branch 'mas
Minikube已启动并正在运行,没有任何错误,但是我无法 curl IP。我在这里遵循:https://docs.traefik.io/user-guide/kubernetes/,似乎没有提到关闭
每当我尝试docker组成任何项目时,都会出现以下错误。 我尝试过有和没有sudo 我在这台机器上只有这个问题。我可以在Mac和Amazon WorkSpace上运行相同的容器。 (myslabs)
我正在尝试 pip install stanza 并收到此消息: ERROR: No matching distribution found for torch>=1.3.0 (from stanza
DNS 解析看起来不错,但我无法 ping 我的服务。可能是什么原因? 来自集群中的另一个 Pod: $ ping backend PING backend.default.svc.cluster.l
我正在使用Hibernate 4 + Spring MVC 4当我开始 Apache Tomcat Server 8我收到此错误: Error creating bean with name 'wel
我是一名优秀的程序员,十分优秀!