[ 
https://issues.apache.org/jira/browse/THRIFT-1116?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavlin Radoslavov reopened THRIFT-1116:
---------------------------------------


I am reopening the issue, because other similar compilation errors have 
popped-up in SVN trunk as of r1362364 (last changed revision r1361615). The 
environment (OS and compiler) are same as in the original report, but the 
compilation errors are in different files:
  lib/c_glib/src/thrift/transport/thrift_socket.c
AND
  lib/c_glib/src/thrift/transport/thrift_framed_transport.c

The compilation error for the first file is as follows. The compilation error 
for the second file is similar:


src/thrift/transport/thrift_socket.c: In function 'thrift_socket_open':
src/thrift/transport/thrift_socket.c:56: error: storage size of 'pin' isn't 
known
src/thrift/transport/thrift_socket.c:74: error: 'AF_INET' undeclared (first use 
in this function)
src/thrift/transport/thrift_socket.c:74: error: (Each undeclared identifier is 
reported only once
src/thrift/transport/thrift_socket.c:74: error: for each function it appears 
in.)
src/thrift/transport/thrift_socket.c:75: error: dereferencing pointer to 
incomplete type
cc1: warnings being treated as errors
src/thrift/transport/thrift_socket.c:76: warning: implicit declaration of 
function 'htons'
src/thrift/transport/thrift_socket.c:79: warning: implicit declaration of 
function 'socket'
src/thrift/transport/thrift_socket.c:79: error: 'SOCK_STREAM' undeclared (first 
use in this function)
src/thrift/transport/thrift_socket.c:89: warning: implicit declaration of 
function 'connect'
src/thrift/transport/thrift_socket.c:56: warning: unused variable 'pin'
src/thrift/transport/thrift_socket.c: In function 'thrift_socket_read':
src/thrift/transport/thrift_socket.c:130: warning: implicit declaration of 
function 'recv'
src/thrift/transport/thrift_socket.c: In function 'thrift_socket_write':
src/thrift/transport/thrift_socket.c:168: warning: implicit declaration of 
function 'send'
gmake[4]: *** [libthrift_c_glib_la-thrift_socket.lo] Error 1

A patch to fix the problem to follow-up.

                
> Compilation error in file TSSLSocket.cpp on FreeBSD-8.0
> -------------------------------------------------------
>
>                 Key: THRIFT-1116
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1116
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Library
>         Environment: OS: FreeBSD 8.0-RELEASE-p2, amd64
> Compiler: gcc (GCC) 4.2.1 20070719
>            Reporter: Pavlin Radoslavov
>            Assignee: Pavlin Radoslavov
>            Priority: Blocker
>              Labels: compilation, freebsd
>         Attachments: thrift_freebsd_getpeername.patch
>
>   Original Estimate: 10m
>  Remaining Estimate: 10m
>
> Thrift from SVN trunk as of r1085268 fails to compile on FreeBSD-8.0:
> libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../.. -I/usr/local/include 
> -I./src -Wall -g -O2 -MT TSSLSocket.lo -MD -MP -MF .deps/TSSLSocket.Tpo -c 
> src/transport/TSSLSocket.cpp  -fPIC -DPIC -o .libs/TSSLSocket.o
> src/transport/TSSLSocket.cpp: In member function 'virtual void 
> apache::thrift::transport::TSSLSocket::authorize()':
> src/transport/TSSLSocket.cpp:249: warning: type-punning to incomplete type 
> might break strict-aliasing rules
> src/transport/TSSLSocket.cpp:249: error: 'getpeername' was not declared in 
> this scope
> src/transport/TSSLSocket.cpp:250: error: 'AF_UNSPEC' was not declared in this 
> scope
> src/transport/TSSLSocket.cpp: In member function 'virtual 
> apache::thrift::transport::Decision 
> apache::thrift::transport::DefaultClientAccessManager::verify(const 
> sockaddr_storage&, const char*, int)':
> src/transport/TSSLSocket.cpp:594: error: 'AF_INET' was not declared in this 
> scope
> src/transport/TSSLSocket.cpp:596: error: 'AF_INET6' was not declared in this 
> scope
> gmake[4]: *** [TSSLSocket.lo] Error 1
> As per FreeBSD's getpeername(2) manual page, the following header files
> have to be included:
>      #include <sys/types.h>
>      #include <sys/socket.h>
> See the following URL for online reference of the getpeername(2) manual page:
> http://www.freebsd.org/cgi/man.cgi?query=getpeername&apropos=0&sektion=0&manpath=FreeBSD+8.0-RELEASE&format=html

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to