Open evanmeng opened 9 years ago
I'm not sure what homebrew's "stable 0.48.0" corresponds to, but it's likely too old to build wangle. Try building folly from master. You need folly to be newer than this commit https://github.com/facebook/folly/commit/e845ef57f1f368944123e4a50bd4d1616a363efa
Hmm, I built folly against master branch according to its instructions in README and got different errors when building wangle.
In file included from /Users/yimmeng/repos/devlibs/wangle/wangle/acceptor/Acceptor.cpp:10:
In file included from /Users/yimmeng/repos/devlibs/wangle/wangle/../wangle/acceptor/Acceptor.h:14:
/Users/yimmeng/repos/devlibs/wangle/wangle/../wangle/acceptor/ConnectionManager.h:63:12: error: no matching function for call to 'make_unique'
return folly::make_unique<ConnectionManager, Destructor>(
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/yimmeng/repos/devlibs/wangle/wangle/acceptor/Acceptor.cpp:86:53: note: in instantiation of function template specialization
'wangle::ConnectionManager::makeUnique<folly::EventBase *&, const std::__1::chrono::duration<long long, std::__1::ratio<1, 1000> > &, wangle::Acceptor *>' requested here
downstreamConnectionManager_ = ConnectionManager::makeUnique(
^
/usr/local/include/folly/Memory.h:49:1: note: candidate function [with T = wangle::ConnectionManager, Args = <folly::DelayedDestruction::Destructor, const
std::__1::chrono::duration<long long, std::__1::ratio<1, 1000> > &, wangle::Acceptor *>] not viable: no known conversion from 'folly::EventBase *' to
'folly::DelayedDestruction::Destructor' for 1st argument
make_unique(Args&&... args) {
^
/usr/local/include/folly/Memory.h:63:3: note: candidate template ignored: disabled by 'enable_if' [with T = wangle::ConnectionManager, Args =
<folly::DelayedDestruction::Destructor>]
std::extent<T>::value != 0, std::unique_ptr<T>>::type
^
/usr/local/include/folly/Memory.h:56:1: note: candidate function template not viable: requires single argument 'n', but 3 arguments were provided
make_unique(const size_t n) {
^
4 warnings and 1 error generated.
make[2]: *** [CMakeFiles/wangle.dir/acceptor/Acceptor.cpp.o] Error 1
make[1]: *** [CMakeFiles/wangle.dir/all] Error 2
make: *** [all] Error 2
Some new folly incompatibility?
Don't use folly from homebrew. Always build from master and make sure to remove it from homebrew: brew remove folly
. I think I might change this brew recipe to always build from master.
On Mac OS X 10.10.5, when calling
make
to build wangle, errors generated like:I am building wangle with homebrew installed folly (folly: stable 0.48.0 (bottled))