Anurag
Anurag

Reputation: 117

Compilation issue using openssl library

I am getting this error message when trying to compile "gloox" library on Fedora14 machine.

tlsopensslserver.cpp:248:8: warning: unused parameter âis_exportâ
tlsopensslserver.cpp: In member function âvirtual bool gloox::OpenSSLServer::privateInit()â:
tlsopensslserver.cpp:257:5: error: âEC_KEY_new_by_curve_nameâ was not declared in this scope
make[3]: *** [tlsopensslserver.lo] Error 1
make[3]: Leaving directory `/root/Documents/RMSAgent/gloox-1.0/src'

Same code is sucessfully compiled on Ubuntu machine.

openssl-devel package is available on Fedora machine.

Please help me to fix this issue.

Upvotes: 1

Views: 1133

Answers (1)

Daniel Roethlisberger
Daniel Roethlisberger

Reputation: 7058

This code in gloox requires a version of OpenSSL which supports Elliptic Curve Cryptography (ECC). Fedora/Redhat ship a version of OpenSSL compiled without ECC support due to intellectual property concerns. Gloox should wrap ECC related code in

#ifndef OPENSSL_NO_EC
// ECC related OpenSSL calls
#endif

using OpenSSL's preprocessor defines, or use autoconf to detect ECC support in OpenSSL and use autoconfigured conditionals to support OpenSSL with ECC disabled.

Alternatively, you can build your own OpenSSL with ECC enabled and build gloox against that.

Upvotes: 1

Related Questions