Hi,

please consider a more recent version of Thrift.

Seriously.

Have fun,
JensG


-----Ursprüngliche Nachricht----- From: Kautuk Consul
Sent: Thursday, July 8, 2021 2:56 AM
To: user@thrift.apache.org
Subject: Re: Not able to compile thrift-0.9.2.


Hi All,

I am trying to compile thrift-0.9.2 but am getting the following
compilation
errors:
<snip>
make[4]: Entering directory '/home/sterlite/src/thrift/lib/cpp'
depbase=`echo src/thrift/transport/TSSLSocket.lo | sed
's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H
-I. -I../.. -I../../lib/cpp/src/thrift  -I/usr/include -I./src  -Wall
-Wextra -pedantic -g -O2 -MT src/thrift/transport/TSSLSocket.lo -MD -MP -MF
$depbase.Tpo -c -o src/thrift/transport/TSSLSocket.lo
src/thrift/transport/TSSLSocket.cpp &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../..
-I../../lib/cpp/src/thrift -I/usr/include -I./src -Wall -Wextra -pedantic
-g -O2 -MT src/thrift/transport/TSSLSocket.lo -MD -MP -MF
src/thrift/transport/.deps/TSSLSocket.Tpo -c
src/thrift/transport/TSSLSocket.cpp  -fPIC -DPIC -o
src/thrift/transport/.libs/TSSLSocket.o
src/thrift/transport/TSSLSocket.cpp: In function ‘void
apache::thrift::transport::initializeOpenSSL()’:
src/thrift/transport/TSSLSocket.cpp:99:39: error: expected
primary-expression before ‘(’ token
   mutexes = boost::shared_array<Mutex>(new Mutex[::CRYPTO_num_locks()]);
                                       ^
In file included from /usr/include/openssl/bio.h:20:0,
                 from /usr/include/openssl/err.h:21,
                 from src/thrift/transport/TSSLSocket.cpp:33:
src/thrift/transport/TSSLSocket.cpp:99:52: error: expected id-expression
before ‘(’ token
   mutexes = boost::shared_array<Mutex>(new Mutex[::CRYPTO_num_locks()]);
                                                    ^
src/thrift/transport/TSSLSocket.cpp: In function ‘void
apache::thrift::transport::cleanupOpenSSL()’:
src/thrift/transport/TSSLSocket.cpp:130:21: warning: ‘void
ERR_remove_state(long unsigned int)’ is deprecated
[-Wdeprecated-declarations]
   ERR_remove_state(0);
                     ^
In file included from /usr/include/openssl/e_os2.h:13:0,
                 from /usr/include/openssl/err.h:13,
                 from src/thrift/transport/TSSLSocket.cpp:33:
/usr/include/openssl/err.h:260:1: note: declared here
 DEPRECATEDIN_1_0_0(void ERR_remove_state(unsigned long pid))
 ^
src/thrift/transport/TSSLSocket.cpp: In constructor
‘apache::thrift::transport::SSLContext::SSLContext(const
apache::thrift::transport::SSLProtocol&)’:
src/thrift/transport/TSSLSocket.cpp:146:24: error: ‘SSLv3_method’ was not
declared in this scope
     ctx_ = SSL_CTX_new(SSLv3_method());
                        ^~~~~~~~~~~~
src/thrift/transport/TSSLSocket.cpp:146:24: note: suggested alternative:
‘SSLv23_method’
     ctx_ = SSL_CTX_new(SSLv3_method());
                        ^~~~~~~~~~~~
                        SSLv23_method
src/thrift/transport/TSSLSocket.cpp:150:37: warning: ‘const SSL_METHOD*
TLSv1_method()’ is deprecated [-Wdeprecated-declarations]
     ctx_ = SSL_CTX_new(TLSv1_method());
                                     ^
In file included from /usr/include/openssl/e_os2.h:13:0,
                 from /usr/include/openssl/err.h:13,
                 from src/thrift/transport/TSSLSocket.cpp:33:
/usr/include/openssl/ssl.h:1852:1: note: declared here
 DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_method(void)) /*
TLSv1.0 */
 ^
src/thrift/transport/TSSLSocket.cpp:154:39: warning: ‘const SSL_METHOD*
TLSv1_1_method()’ is deprecated [-Wdeprecated-declarations]
     ctx_ = SSL_CTX_new(TLSv1_1_method());
                                       ^
In file included from /usr/include/openssl/e_os2.h:13:0,
                 from /usr/include/openssl/err.h:13,
                 from src/thrift/transport/TSSLSocket.cpp:33:
/usr/include/openssl/ssl.h:1858:1: note: declared here
 DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_method(void)) /*
TLSv1.1 */
 ^
src/thrift/transport/TSSLSocket.cpp:158:39: warning: ‘const SSL_METHOD*
TLSv1_2_method()’ is deprecated [-Wdeprecated-declarations]
     ctx_ = SSL_CTX_new(TLSv1_2_method());
                                       ^
In file included from /usr/include/openssl/e_os2.h:13:0,
                 from /usr/include/openssl/err.h:13,
                 from src/thrift/transport/TSSLSocket.cpp:33:
/usr/include/openssl/ssl.h:1864:1: note: declared here
 DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_method(void)) /*
TLSv1.2 */
 ^
src/thrift/transport/TSSLSocket.cpp: In member function ‘virtual void
apache::thrift::transport::TSSLSocket::close()’:
src/thrift/transport/TSSLSocket.cpp:269:23: warning: ‘void
ERR_remove_state(long unsigned int)’ is deprecated
[-Wdeprecated-declarations]
     ERR_remove_state(0);
                       ^
In file included from /usr/include/openssl/e_os2.h:13:0,
                 from /usr/include/openssl/err.h:13,
                 from src/thrift/transport/TSSLSocket.cpp:33:
/usr/include/openssl/err.h:260:1: note: declared here
 DEPRECATEDIN_1_0_0(void ERR_remove_state(unsigned long pid))
 ^
src/thrift/transport/TSSLSocket.cpp: In member function ‘virtual void
apache::thrift::transport::TSSLSocket::authorize()’:
src/thrift/transport/TSSLSocket.cpp:407:55: warning: ‘unsigned char*
ASN1_STRING_data(ASN1_STRING*)’ is deprecated [-Wdeprecated-declarations]
       char* data = (char*)ASN1_STRING_data(name->d.ia5);
                                                       ^
In file included from /usr/include/openssl/e_os2.h:13:0,
                 from /usr/include/openssl/err.h:13,
                 from src/thrift/transport/TSSLSocket.cpp:33:
/usr/include/openssl/asn1.h:554:1: note: declared here
 DEPRECATEDIN_1_1_0(unsigned char *ASN1_STRING_data(ASN1_STRING *x))
 ^
src/thrift/transport/TSSLSocket.cpp: At global scope:
src/thrift/transport/TSSLSocket.cpp:87:13: warning: ‘void
apache::thrift::transport::dyn_destroy(CRYPTO_dynlock_value*, const char*,
int)’ defined but not used [-Wunused-function]
 static void dyn_destroy(struct CRYPTO_dynlock_value* lock, const char*,
int) {
             ^~~~~~~~~~~
src/thrift/transport/TSSLSocket.cpp:75:13: warning: ‘void
apache::thrift::transport::dyn_lock(int, CRYPTO_dynlock_value*, const
char*, int)’ defined but not used [-Wunused-function]
 static void dyn_lock(int mode,
             ^~~~~~~~
src/thrift/transport/TSSLSocket.cpp:71:30: warning: ‘CRYPTO_dynlock_value*
apache::thrift::transport::dyn_create(const char*, int)’ defined but not
used [-Wunused-function]
 static CRYPTO_dynlock_value* dyn_create(const char*, int) {
                              ^~~~~~~~~~
src/thrift/transport/TSSLSocket.cpp:57:13: warning: ‘void
apache::thrift::transport::callbackLocking(int, int, const char*, int)’
defined but not used [-Wunused-function]
 static void callbackLocking(int mode, int n, const char*, int) {
             ^~~~~~~~~~~~~~~
Makefile:1181: recipe for target 'src/thrift/transport/TSSLSocket.lo'
failed
make[4]: *** [src/thrift/transport/TSSLSocket.lo] Error 1
make[4]: Leaving directory '/home/sterlite/src/thrift/lib/cpp'
Makefile:1454: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/home/sterlite/src/thrift/lib/cpp'
Makefile:505: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/sterlite/src/thrift/lib'
Makefile:542: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/sterlite/src/thrift'
Makefile:464: recipe for target 'all' failed
make: *** [all] Error 2


I have the latest g++ compiler on my system.

I tried downgrading g++ also but still the same issue is there.

Can anyone please help me on this ?


Thanks and Regards.

Reply via email to