facebook / wangle

Wangle is a framework providing a set of common client/server abstractions for building services in a consistent, modular, and composable way.
Apache License 2.0
3.05k stars 537 forks source link

Wangle failing to build on Ubuntu 14.04 #18

Closed mjs6643 closed 8 years ago

mjs6643 commented 8 years ago

The following error happens when building in Ubuntu 14.04

In file included from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/Handler.h:13:0,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/AsyncSocketHandler.h:13,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/broadcast/BroadcastHandler.h:12,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/broadcast/test/Mocks.h:14,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/channel/broadcast/test/ObservingHandlerTest.cpp:10:
/usr/local/include/folly/futures/Future.h:50:3: note: declared here
   Future(Future const&) = delete;
   ^
In file included from /home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/gmock-actions.h:46:0,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/gmock.h:58,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/broadcast/test/Mocks.h:12,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/channel/broadcast/test/ObservingHandlerTest.cpp:10:
/home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/internal/gmock-internal-utils.h: In instantiation of ‘T testing::internal::Invalid() [with T = folly::Future<wangle::BroadcastHandler<int>*>]’:
/home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/gmock-actions.h:78:33:   required from ‘static T testing::internal::BuiltInDefaultValue<T>::Get() [with T = folly::Future<wangle::BroadcastHandler<int>*>]’
/home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/gmock-actions.h:190:47:   required from ‘static T testing::DefaultValue<T>::Get() [with T = folly::Future<wangle::BroadcastHandler<int>*>]’
/home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/gmock-spec-builders.h:1460:38:   required from ‘testing::internal::FunctionMockerBase<F>::Result testing::internal::FunctionMockerBase<F>::PerformDefaultAction(const ArgumentTuple&, const string&) const [with F = folly::Future<wangle::BroadcastHandler<int>*>(const std::basic_string<char>&); testing::internal::FunctionMockerBase<F>::Result = folly::Future<wangle::BroadcastHandler<int>*>; testing::internal::FunctionMockerBase<F>::ArgumentTuple = std::tuple<const std::basic_string<char, std::char_traits<char>, std::allocator<char> >&>; testing::internal::string = std::basic_string<char>]’
/home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/gmock-spec-builders.h:1350:66:   required from ‘static testing::internal::ActionResultHolder<T>* testing::internal::ActionResultHolder<T>::PerformDefaultAction(const testing::internal::FunctionMockerBase<F>*, const typename testing::internal::Function<F>::ArgumentTuple&, const string&) [with F = folly::Future<wangle::BroadcastHandler<int>*>(const std::basic_string<char>&); T = folly::Future<wangle::BroadcastHandler<int>*>; typename testing::internal::Function<F>::ArgumentTuple = std::tuple<const std::basic_string<char, std::char_traits<char>, std::allocator<char> >&>; testing::internal::string = std::basic_string<char>]’
/home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/gmock-spec-builders.h:1473:75:   required from ‘testing::internal::UntypedActionResultHolderBase* testing::internal::FunctionMockerBase<F>::UntypedPerformDefaultAction(const void*, const string&) const [with F = folly::Future<wangle::BroadcastHandler<int>*>(const std::basic_string<char>&); testing::internal::string = std::basic_string<char>]’
/home/vagrant/proxygen/proxygen/wangle/wangle/channel/broadcast/test/ObservingHandlerTest.cpp:346:1:   required from here
/home/vagrant/proxygen/proxygen/wangle/wangle/gmock/src/gmock/include/gmock/internal/gmock-internal-utils.h:371:71: error: use of deleted function ‘folly::Future<T>::Future(const folly::Future<T>&) [with T = wangle::BroadcastHandler<int>*]’
       *static_cast<volatile typename remove_reference<T>::type*>(NULL));
                                                                       ^
In file included from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/Handler.h:13:0,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/AsyncSocketHandler.h:13,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/broadcast/BroadcastHandler.h:12,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/../wangle/channel/broadcast/test/Mocks.h:14,
                 from /home/vagrant/proxygen/proxygen/wangle/wangle/channel/broadcast/test/ObservingHandlerTest.cpp:10:
/usr/local/include/folly/futures/Future.h:50:3: note: declared here
   Future(Future const&) = delete;
   ^
make[2]: *** [CMakeFiles/ObservingHandlerTest.dir/channel/broadcast/test/ObservingHandlerTest.cpp.o] Error 1
make[1]: *** [CMakeFiles/ObservingHandlerTest.dir/all] Error 2
make[2]: *** [CMakeFiles/BroadcastPoolTest.dir/channel/broadcast/test/BroadcastPoolTest.cpp.o] Error 1
make[1]: *** [CMakeFiles/BroadcastPoolTest.dir/all] Error 2
Linking CXX executable bin/BootstrapTest
[ 95%] Built target BootstrapTest
Linking CXX executable bin/PipelineTest
[ 95%] Built target PipelineTest
make: *** [all] Error 2

Commenting out the tests added in commit 35005bc23917328a303e3afbdf8306cb616240b4 fixes the issue

djwatson commented 8 years ago

We've got a fix coming shortly. Thanks!