make[2]: Entering directory '/cygdrive/c/Data/ruby/ext/openssl' compiling ossl.c In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:75:0: warning: "X509_STORE_get_ex_new_index" redefined # define X509_STORE_get_ex_new_index(l, p, newf, dupf, freef) \ In file included from /usr/include/openssl/x509.h:320:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/x509_vfy.h:326:0: note: this is the location of the previous definition #define X509_STORE_get_ex_new_index(l, p, newf, dupf, freef) \ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:149:22: error: static declaration of eEVP_PKEY_get0_RSAf follows non-static declaration static inline _type *EVP_PKEY_get0_##_type(EVP_PKEY *pkey) { \ ^ openssl_missing.h:173:1: note: in expansion of macro eIMPL_PKEY_GETTERf IMPL_PKEY_GETTER(RSA, rsa) ^~~~~~~~~~~~~~~~ In file included from /usr/include/openssl/x509.h:18:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/evp.h:1012:16: note: previous declaration of eEVP_PKEY_get0_RSAf was here struct rsa_st *EVP_PKEY_get0_RSA(EVP_PKEY *pkey); ^~~~~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h: In function eEVP_PKEY_get0_RSAf: openssl_missing.h:150:13: error: dereferencing pointer to incomplete type eEVP_PKEY {aka struct evp_pkey_st}f return pkey->pkey._name; } ^ openssl_missing.h:173:1: note: in expansion of macro eIMPL_PKEY_GETTERf IMPL_PKEY_GETTER(RSA, rsa) ^~~~~~~~~~~~~~~~ openssl_missing.h: At top level: openssl_missing.h:174:20: error: static declaration of eRSA_get0_keyf follows non-static declaration IMPL_KEY_ACCESSOR3(RSA, key, n, e, d, (n == obj->n || e == obj->e || (obj->d && d == obj->d))) ^ openssl_missing.h:161:20: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline void _type##_get0_##_group(const _type *obj, const BIGNUM **a1, const BIGNUM **a2, const BIGNUM **a3) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:25:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/rsa.h:209:6: note: previous declaration of eRSA_get0_keyf was here void RSA_get0_key(const RSA *r, ^~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h: In function eRSA_get0_keyf: openssl_missing.h:162:19: error: dereferencing pointer to incomplete type eRSA {aka const struct rsa_st}f if (a1) *a1 = obj->a1; \ ^ openssl_missing.h:174:1: note: in expansion of macro eIMPL_KEY_ACCESSOR3f IMPL_KEY_ACCESSOR3(RSA, key, n, e, d, (n == obj->n || e == obj->e || (obj->d && d == obj->d))) ^~~~~~~~~~~~~~~~~~ openssl_missing.h: At top level: openssl_missing.h:174:20: error: static declaration of eRSA_set0_keyf follows non-static declaration IMPL_KEY_ACCESSOR3(RSA, key, n, e, d, (n == obj->n || e == obj->e || (obj->d && d == obj->d))) ^ openssl_missing.h:165:19: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline int _type##_set0_##_group(_type *obj, BIGNUM *a1, BIGNUM *a2, BIGNUM *a3) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:25:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/rsa.h:204:5: note: previous declaration of eRSA_set0_keyf was here int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d); ^~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h: In function eRSA_set0_keyf: openssl_missing.h:174:48: error: dereferencing pointer to incomplete type eRSA {aka struct rsa_st}f IMPL_KEY_ACCESSOR3(RSA, key, n, e, d, (n == obj->n || e == obj->e || (obj->d && d == obj->d))) ^ openssl_missing.h:166:6: note: in definition of macro eIMPL_KEY_ACCESSOR3f if (_fail_cond) return 0; \ ^~~~~~~~~~ openssl_missing.h: At top level: openssl_missing.h:175:20: error: static declaration of eRSA_get0_factorsf follows non-static declaration IMPL_KEY_ACCESSOR2(RSA, factors, p, q, (p == obj->p || q == obj->q)) ^ openssl_missing.h:152:20: note: in definition of macro eIMPL_KEY_ACCESSOR2f static inline void _type##_get0_##_group(const _type *obj, const BIGNUM **a1, const BIGNUM **a2) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:25:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/rsa.h:211:6: note: previous declaration of eRSA_get0_factorsf was here void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q); ^~~~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:175:20: error: static declaration of eRSA_set0_factorsf follows non-static declaration IMPL_KEY_ACCESSOR2(RSA, factors, p, q, (p == obj->p || q == obj->q)) ^ openssl_missing.h:155:19: note: in definition of macro eIMPL_KEY_ACCESSOR2f static inline int _type##_set0_##_group(_type *obj, BIGNUM *a1, BIGNUM *a2) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:25:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/rsa.h:205:5: note: previous declaration of eRSA_set0_factorsf was here int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q); ^~~~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:176:20: error: static declaration of eRSA_get0_crt_paramsf follows non-static declaration IMPL_KEY_ACCESSOR3(RSA, crt_params, dmp1, dmq1, iqmp, (dmp1 == obj->dmp1 || dmq1 == obj->dmq1 || iqmp == obj->iqmp)) ^ openssl_missing.h:161:20: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline void _type##_get0_##_group(const _type *obj, const BIGNUM **a1, const BIGNUM **a2, const BIGNUM **a3) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:25:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/rsa.h:214:6: note: previous declaration of eRSA_get0_crt_paramsf was here void RSA_get0_crt_params(const RSA *r, ^~~~~~~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:176:20: error: static declaration of eRSA_set0_crt_paramsf follows non-static declaration IMPL_KEY_ACCESSOR3(RSA, crt_params, dmp1, dmq1, iqmp, (dmp1 == obj->dmp1 || dmq1 == obj->dmq1 || iqmp == obj->iqmp)) ^ openssl_missing.h:165:19: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline int _type##_set0_##_group(_type *obj, BIGNUM *a1, BIGNUM *a2, BIGNUM *a3) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:25:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/rsa.h:206:5: note: previous declaration of eRSA_set0_crt_paramsf was here int RSA_set0_crt_params(RSA *r,BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp); ^~~~~~~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:149:22: error: static declaration of eEVP_PKEY_get0_DSAf follows non-static declaration static inline _type *EVP_PKEY_get0_##_type(EVP_PKEY *pkey) { \ ^ openssl_missing.h:180:1: note: in expansion of macro eIMPL_PKEY_GETTERf IMPL_PKEY_GETTER(DSA, dsa) ^~~~~~~~~~~~~~~~ In file included from /usr/include/openssl/x509.h:18:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/evp.h:1018:16: note: previous declaration of eEVP_PKEY_get0_DSAf was here struct dsa_st *EVP_PKEY_get0_DSA(EVP_PKEY *pkey); ^~~~~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:181:20: error: static declaration of eDSA_get0_keyf follows non-static declaration IMPL_KEY_ACCESSOR2(DSA, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^ openssl_missing.h:152:20: note: in definition of macro eIMPL_KEY_ACCESSOR2f static inline void _type##_get0_##_group(const _type *obj, const BIGNUM **a1, const BIGNUM **a2) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:26:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dsa.h:173:6: note: previous declaration of eDSA_get0_keyf was here void DSA_get0_key(const DSA *d, ^~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h: In function eDSA_get0_keyf: openssl_missing.h:153:19: error: dereferencing pointer to incomplete type eDSA {aka const struct dsa_st}f if (a1) *a1 = obj->a1; \ ^ openssl_missing.h:181:1: note: in expansion of macro eIMPL_KEY_ACCESSOR2f IMPL_KEY_ACCESSOR2(DSA, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^~~~~~~~~~~~~~~~~~ openssl_missing.h: At top level: openssl_missing.h:181:20: error: static declaration of eDSA_set0_keyf follows non-static declaration IMPL_KEY_ACCESSOR2(DSA, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^ openssl_missing.h:155:19: note: in definition of macro eIMPL_KEY_ACCESSOR2f static inline int _type##_set0_##_group(_type *obj, BIGNUM *a1, BIGNUM *a2) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:26:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dsa.h:175:5: note: previous declaration of eDSA_set0_keyf was here int DSA_set0_key(DSA *d, BIGNUM *pub_key, BIGNUM *priv_key); ^~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h: In function eDSA_set0_keyf: openssl_missing.h:181:64: error: dereferencing pointer to incomplete type eDSA {aka struct dsa_st}f IMPL_KEY_ACCESSOR2(DSA, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^ openssl_missing.h:156:6: note: in definition of macro eIMPL_KEY_ACCESSOR2f if (_fail_cond) return 0; \ ^~~~~~~~~~ openssl_missing.h: At top level: openssl_missing.h:182:20: error: static declaration of eDSA_get0_pqgf follows non-static declaration IMPL_KEY_ACCESSOR3(DSA, pqg, p, q, g, (p == obj->p || q == obj->q || g == obj->g)) ^ openssl_missing.h:161:20: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline void _type##_get0_##_group(const _type *obj, const BIGNUM **a1, const BIGNUM **a2, const BIGNUM **a3) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:26:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dsa.h:170:6: note: previous declaration of eDSA_get0_pqgf was here void DSA_get0_pqg(const DSA *d, ^~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:182:20: error: static declaration of eDSA_set0_pqgf follows non-static declaration IMPL_KEY_ACCESSOR3(DSA, pqg, p, q, g, (p == obj->p || q == obj->q || g == obj->g)) ^ openssl_missing.h:165:19: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline int _type##_set0_##_group(_type *obj, BIGNUM *a1, BIGNUM *a2, BIGNUM *a3) { \ ^~~~~ In file included from /usr/include/openssl/x509.h:26:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dsa.h:172:5: note: previous declaration of eDSA_set0_pqgf was here int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g); ^~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:149:22: error: static declaration of eEVP_PKEY_get0_DHf follows non-static declaration static inline _type *EVP_PKEY_get0_##_type(EVP_PKEY *pkey) { \ ^ openssl_missing.h:186:1: note: in expansion of macro eIMPL_PKEY_GETTERf IMPL_PKEY_GETTER(DH, dh) ^~~~~~~~~~~~~~~~ In file included from /usr/include/openssl/x509.h:18:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/evp.h:1024:15: note: previous declaration of eEVP_PKEY_get0_DHf was here struct dh_st *EVP_PKEY_get0_DH(EVP_PKEY *pkey); ^~~~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:187:20: error: static declaration of eDH_get0_keyf follows non-static declaration IMPL_KEY_ACCESSOR2(DH, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^ openssl_missing.h:152:20: note: in definition of macro eIMPL_KEY_ACCESSOR2f static inline void _type##_get0_##_group(const _type *obj, const BIGNUM **a1, const BIGNUM **a2) { \ ^~~~~ In file included from /usr/include/openssl/dsa.h:25:0, from /usr/include/openssl/x509.h:26, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dh.h:183:6: note: previous declaration of eDH_get0_keyf was here void DH_get0_key(const DH *dh, ^~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h: In function eDH_get0_keyf: openssl_missing.h:153:19: error: dereferencing pointer to incomplete type eDH {aka const struct dh_st}f if (a1) *a1 = obj->a1; \ ^ openssl_missing.h:187:1: note: in expansion of macro eIMPL_KEY_ACCESSOR2f IMPL_KEY_ACCESSOR2(DH, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^~~~~~~~~~~~~~~~~~ openssl_missing.h: At top level: openssl_missing.h:187:20: error: static declaration of eDH_set0_keyf follows non-static declaration IMPL_KEY_ACCESSOR2(DH, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^ openssl_missing.h:155:19: note: in definition of macro eIMPL_KEY_ACCESSOR2f static inline int _type##_set0_##_group(_type *obj, BIGNUM *a1, BIGNUM *a2) { \ ^~~~~ In file included from /usr/include/openssl/dsa.h:25:0, from /usr/include/openssl/x509.h:26, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dh.h:185:5: note: previous declaration of eDH_set0_keyf was here int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key); ^~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h: In function eDH_set0_keyf: openssl_missing.h:187:63: error: dereferencing pointer to incomplete type eDH {aka struct dh_st}f IMPL_KEY_ACCESSOR2(DH, key, pub_key, priv_key, (pub_key == obj->pub_key || (obj->priv_key && priv_key == obj->priv_key))) ^ openssl_missing.h:156:6: note: in definition of macro eIMPL_KEY_ACCESSOR2f if (_fail_cond) return 0; \ ^~~~~~~~~~ openssl_missing.h: At top level: openssl_missing.h:188:20: error: static declaration of eDH_get0_pqgf follows non-static declaration IMPL_KEY_ACCESSOR3(DH, pqg, p, q, g, (p == obj->p || (obj->q && q == obj->q) || g == obj->g)) ^ openssl_missing.h:161:20: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline void _type##_get0_##_group(const _type *obj, const BIGNUM **a1, const BIGNUM **a2, const BIGNUM **a3) { \ ^~~~~ In file included from /usr/include/openssl/dsa.h:25:0, from /usr/include/openssl/x509.h:26, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dh.h:180:6: note: previous declaration of eDH_get0_pqgf was here void DH_get0_pqg(const DH *dh, ^~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:188:20: error: static declaration of eDH_set0_pqgf follows non-static declaration IMPL_KEY_ACCESSOR3(DH, pqg, p, q, g, (p == obj->p || (obj->q && q == obj->q) || g == obj->g)) ^ openssl_missing.h:165:19: note: in definition of macro eIMPL_KEY_ACCESSOR3f static inline int _type##_set0_##_group(_type *obj, BIGNUM *a1, BIGNUM *a2, BIGNUM *a3) { \ ^~~~~ In file included from /usr/include/openssl/dsa.h:25:0, from /usr/include/openssl/x509.h:26, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dh.h:182:5: note: previous declaration of eDH_set0_pqgf was here int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g); ^~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:189:23: error: static declaration of eDH_get0_enginef follows non-static declaration static inline ENGINE *DH_get0_engine(DH *dh) { return dh->engine; } ^~~~~~~~~~~~~~ In file included from /usr/include/openssl/dsa.h:25:0, from /usr/include/openssl/x509.h:26, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/dh.h:194:9: note: previous declaration of eDH_get0_enginef was here ENGINE *DH_get0_engine(DH *d); ^~~~~~~~~~~~~~ In file included from ossl.h:155:0, from ossl.c:10: openssl_missing.h:149:22: error: static declaration of eEVP_PKEY_get0_EC_KEYf follows non-static declaration static inline _type *EVP_PKEY_get0_##_type(EVP_PKEY *pkey) { \ ^ openssl_missing.h:193:1: note: in expansion of macro eIMPL_PKEY_GETTERf IMPL_PKEY_GETTER(EC_KEY, ec) ^~~~~~~~~~~~~~~~ In file included from /usr/include/openssl/x509.h:18:0, from /usr/include/openssl/x509v3.h:14, from ossl.h:23, from ossl.c:10: /usr/include/openssl/evp.h:1030:19: note: previous declaration of eEVP_PKEY_get0_EC_KEYf was here struct ec_key_st *EVP_PKEY_get0_EC_KEY(EVP_PKEY *pkey); ^~~~~~~~~~~~~~~~~~~~ ossl.c:585:1: warning: eossl_lock_callbackf defined but not used [-Wunused-function] ossl_lock_callback(int mode, int type, const char *file, int line) ^~~~~~~~~~~~~~~~~~ ossl.c:576:13: warning: eossl_threadid_funcf defined but not used [-Wunused-function] static void ossl_threadid_func(CRYPTO_THREADID *id) ^~~~~~~~~~~~~~~~~~ ossl.c:570:1: warning: eossl_dyn_destroy_callbackf defined but not used [-Wunused-function] ossl_dyn_destroy_callback(struct CRYPTO_dynlock_value *l, const char *file, int line) ^~~~~~~~~~~~~~~~~~~~~~~~~ ossl.c:564:1: warning: eossl_dyn_lock_callbackf defined but not used [-Wunused-function] ossl_dyn_lock_callback(int mode, struct CRYPTO_dynlock_value *l, const char *file, int line) ^~~~~~~~~~~~~~~~~~~~~~ ossl.c:553:1: warning: eossl_dyn_create_callbackf defined but not used [-Wunused-function] ossl_dyn_create_callback(const char *file, int line) ^~~~~~~~~~~~~~~~~~~~~~~~ cc1: warning: unrecognized command line option e-Wno-self-assignf cc1: warning: unrecognized command line option e-Wno-parentheses-equalityf cc1: warning: unrecognized command line option e-Wno-constant-logical-operandf cc1: warning: unrecognized command line option e-Wno-cast-function-typef make[2]: *** [Makefile:312: ossl.o] Error 1 make[2]: Leaving directory '/cygdrive/c/Data/ruby/ext/openssl' make[1]: *** [exts.mk:253: ext/openssl/all] Error 2 make[1]: Leaving directory '/cygdrive/c/Data/ruby' make: *** [uncommon.mk:288: build-ext] Error 2 rm cygruby270.rc