You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@thrift.apache.org by Дмитрий Рыкованов <d....@geoscan.aero> on 2014/01/16 09:46:29 UTC

thrift 0.9.1 build failed on cygwin

Hi!

We have problem building the latest thrift 0.9.1 cpp library on Cygwin.

thrift 0.9.0 builds fine.

 

source='src/thrift/concurrency/ThreadManager.cpp' object='ThreadManager.lo'
libtool=yes \

DEPDIR=.deps depmode=none /bin/sh ../../depcomp \

/bin/sh ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.
-I../.. -I../../lib/cpp/src/thrift  -I/usr/include -I./src  -Wall -D
PTHREAD_MUTEX_RECURSIVE_NP=PTHREAD_MUTEX_RECURSIVE -c -o ThreadManager.lo
`test -f 'src/thrift/concurrency/ThreadManager.cpp' || echo
'./'`src/thrift/concurrency/ThreadManager.cpp

libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../..
-I../../lib/cpp/src/thrift -I/usr/include -I./src -Wall -D
PTHREAD_MUTEX_RECURSIVE_NP=PTHREAD_MUTEX_RECURSIVE -c
src/thrift/concurrency/ThreadManager.cpp  -DDLL_EXPORT -DPIC -o
.libs/ThreadManager.o

In file included from src/thrift/concurrency/ThreadManager.cpp:25:0:

./src/thrift/concurrency/Util.h: In static member function 'static void
apache::thrift::concurrency::Util::toTimeval(apache::thrift::concurrency::ti
meval&, int64_t)':

./src/thrift/concurrency/Util.h:72:11: error: invalid use of incomplete type
'struct apache::thrift::concurrency::timeval'

     result.tv_sec  = static_cast<uint32_t>(value / MS_PER_S); // ms to s

           ^

In file included from src/thrift/concurrency/ThreadManager.cpp:24:0:

./src/thrift/concurrency/Monitor.h:87:32: error: forward declaration of
'struct apache::thrift::concurrency::timeval'

   int waitForTime(const struct timeval* abstime) const;

                                ^

In file included from src/thrift/concurrency/ThreadManager.cpp:25:0:

./src/thrift/concurrency/Util.h:73:11: error: invalid use of incomplete type
'struct apache::thrift::concurrency::timeval'

     result.tv_usec = static_cast<uint32_t>((value % MS_PER_S) * US_PER_MS);
// ms to us

           ^

In file included from src/thrift/concurrency/ThreadManager.cpp:24:0:

./src/thrift/concurrency/Monitor.h:87:32: error: forward declaration of
'struct apache::thrift::concurrency::timeval'

   int waitForTime(const struct timeval* abstime) const;

                                ^

In file included from src/thrift/concurrency/ThreadManager.cpp:25:0:

./src/thrift/concurrency/Util.h: In static member function 'static void
apache::thrift::concurrency::Util::toTicks(int64_t&, const
apache::thrift::concurrency::timeval&, int64_t)':

./src/thrift/concurrency/Util.h:101:33: error: invalid use of incomplete
type 'const struct apache::thrift::concurrency::timeval'

     return toTicks(result, value.tv_sec, value.tv_usec, US_PER_S,
ticksPerSec);

                                 ^

In file included from src/thrift/concurrency/ThreadManager.cpp:24:0:

./src/thrift/concurrency/Monitor.h:87:32: error: forward declaration of
'const struct apache::thrift::concurrency::timeval'

   int waitForTime(const struct timeval* abstime) const;

                                ^

In file included from src/thrift/concurrency/ThreadManager.cpp:25:0:

./src/thrift/concurrency/Util.h:101:47: error: invalid use of incomplete
type 'const struct apache::thrift::concurrency::timeval'

     return toTicks(result, value.tv_sec, value.tv_usec, US_PER_S,
ticksPerSec);

                                               ^

In file included from src/thrift/concurrency/ThreadManager.cpp:24:0:

./src/thrift/concurrency/Monitor.h:87:32: error: forward declaration of
'const struct apache::thrift::concurrency::timeval'

   int waitForTime(const struct timeval* abstime) const;

                                ^

In file included from src/thrift/concurrency/ThreadManager.cpp:25:0:

./src/thrift/concurrency/Util.h:101:78: error: return-statement with a
value, in function returning 'void' [-fpermissive]

     return toTicks(result, value.tv_sec, value.tv_usec, US_PER_S,
ticksPerSec);

 
^

 

 

 

$ gcc --version

gcc (GCC) 4.8.2