error: ‘class apache::thrift::server::TNonblockingServer’ has no member named ‘setMaxConnections’

269 views
Skip to first unread message

Sandro Tosi

unread,
Sep 30, 2010, 3:21:25 AM9/30/10
to Scribe Server
Hello,
I'm trying to compile scribe on a Debian system but I'm failing :(

I took thrift from this repo: git+ssh://git.debian.org/git/collab-
maint/thrift.git (that contains v0.3.0 . It compiles fine, I just
added the cimpile&install for contrib/fb303 .

When I then try to compile scribe I face this errors:

$ ./bootstrap.sh --with-fb303path=/usr/ --with-thriftpath=/usr/ &&
make
...
g++ -DPACKAGE_NAME=\"scribe\" -DPACKAGE_TARNAME=\"scribe\" -
DPACKAGE_VERSION=\"1.5.0\" -DPACKAGE_STRING=\"scribe\ 1.5.0\" -
DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"scribe\" -
DVERSION=\"1.5.0\" -DHAVE_BOOST=/\*\*/ -DHAVE_BOOST_SYSTEM=/\*\*/ -
DHAVE_BOOST_FILESYSTEM=/\*\*/ -I. -I.. -I/usr//include -I/usr//
include/thrift -I/usr//include/thrift -I/usr//include/thrift/fb303 -I/
usr/local/include -I/usr/include -Wall -O3 -MT env_default.o -MD -
MP -MF .deps/env_default.Tpo -c -o env_default.o env_default.cpp
env_default.cpp: In function ‘void scribe::startServer()’:
env_default.cpp:133: error: ‘class
apache::thrift::server::TNonblockingServer’ has no member named
‘setMaxConnections’
env_default.cpp:134: error: ‘class
apache::thrift::server::TNonblockingServer’ has no member named
‘setOverloadAction’
env_default.cpp:134: error: ‘T_OVERLOAD_CLOSE_ON_ACCEPT’ was not
declared in this scope
make[3]: *** [env_default.o] Error 1
make[3]: Leaving directory `/home/morph/scribe/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/morph/scribe/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/morph/scribe'
make: *** [all] Error 2

(if you want I can copy&paste the whole build log) could you please
give me some help in compiling scribe?

Thanks in advance,
Sandro

Gautam Roy

unread,
Sep 30, 2010, 11:33:53 AM9/30/10
to scribe...@googlegroups.com, Sandro Tosi
Which version of thrift are you using?

Just tried it and scribe builds with the latest stable release of thrift.
http://incubator.apache.org/thrift/download/

Gautam

On 9/30/10 12:21 AM, Sandro Tosi wrote:
> Hello,
> I'm trying to compile scribe on a Debian system but I'm failing :(
>
> I took thrift from this repo: git+ssh://git.debian.org/git/collab-
> maint/thrift.git (that contains v0.3.0 . It compiles fine, I just
> added the cimpile&install for contrib/fb303 .
>
> When I then try to compile scribe I face this errors:
>
> $ ./bootstrap.sh --with-fb303path=/usr/ --with-thriftpath=/usr/&&
> make
> ...
> g++ -DPACKAGE_NAME=\"scribe\" -DPACKAGE_TARNAME=\"scribe\" -
> DPACKAGE_VERSION=\"1.5.0\" -DPACKAGE_STRING=\"scribe\ 1.5.0\" -
> DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"scribe\" -
> DVERSION=\"1.5.0\" -DHAVE_BOOST=/\*\*/ -DHAVE_BOOST_SYSTEM=/\*\*/ -
> DHAVE_BOOST_FILESYSTEM=/\*\*/ -I. -I.. -I/usr//include -I/usr//
> include/thrift -I/usr//include/thrift -I/usr//include/thrift/fb303 -I/
> usr/local/include -I/usr/include -Wall -O3 -MT env_default.o -MD -
> MP -MF .deps/env_default.Tpo -c -o env_default.o env_default.cpp

> env_default.cpp: In function �void scribe::startServer()�:
> env_default.cpp:133: error: �class
> apache::thrift::server::TNonblockingServer� has no member named
> �setMaxConnections�
> env_default.cpp:134: error: �class
> apache::thrift::server::TNonblockingServer� has no member named
> �setOverloadAction�
> env_default.cpp:134: error: �T_OVERLOAD_CLOSE_ON_ACCEPT� was not

Sandro Tosi

unread,
Sep 30, 2010, 1:41:19 PM9/30/10
to scribe...@googlegroups.com
Hi Gautam,
thanks for your reply

On Thu, Sep 30, 2010 at 17:33, Gautam Roy <gr...@facebook.com> wrote:
>  Which version of thrift are you using?

0.3.0 (and for scribe what you can git clone from github)

> Just tried it and scribe builds with the latest stable release of thrift.
> http://incubator.apache.org/thrift/download/

Mh, could you please paste the commands you used? both to compile and
install thrift and scribe.

Thanks in advance,
--
Sandro Tosi (aka morph, morpheus, matrixhasu)
My website: http://matrixhasu.altervista.org/
Me at Debian: http://wiki.debian.org/SandroTosi

Gautam Roy

unread,
Sep 30, 2010, 2:08:42 PM9/30/10
to <scribe-server@googlegroups.com>
The commands are there in the README,

http://github.com/facebook/scribe/blob/master//README

The README in thrift and fb303 have the build commands

This post also has some info
http://snippets.notmyidea.org/2009/07/29/howto-install-scribe-the-facebook-log-system-on-debian/

Sandro Tosi

unread,
Oct 1, 2010, 4:06:05 AM10/1/10
to scribe...@googlegroups.com
I already read the doc, with no luck.

I followed now step-by-step the guide at
http://snippets.notmyidea.org/2009/07/29/howto-install-scribe-the-facebook-log-system-on-debian/
and at scribe compile I got:

g++ -DPACKAGE_NAME=\"scribe\" -DPACKAGE_TARNAME=\"scribe\"
-DPACKAGE_VERSION=\"1.5.0\" -DPACKAGE_STRING=\"scribe\ 1.5.0\"

-DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DHAVE_BOOST=/\*\*/


-DHAVE_BOOST_SYSTEM=/\*\*/ -DHAVE_BOOST_FILESYSTEM=/\*\*/ -I. -I..

-I/usr/local/include -I/usr/local/include/thrift
-I/usr/local/include/thrift -I/usr/local/include/thrift/fb303
-I/usr/include -Wall -O3 -MT store.o -MD -MP -MF .deps/store.Tpo
-c -o store.o store.cpp
In file included from store.cpp:26:
scribe_server.h:45: error: conflicting return type specified for
‘virtual scribe::thrift::ResultCode scribeHandler::Log(const
std::vector<scribe::thrift::LogEntry,
std::allocator<scribe::thrift::LogEntry> >&)’
../src/gen-cpp/scribe.h:18: error: overriding ‘virtual
scribe::thrift::ResultCode::type scribe::thrift::scribeIf::Log(const
std::vector<scribe::thrift::LogEntry,
std::allocator<scribe::thrift::LogEntry> >&)’


so again, what are the commands you run that allowed you to compile it
correctly?

Regards,
Sandro

Ying-Yi Liang

unread,
Oct 2, 2010, 4:03:55 AM10/2/10
to Scribe Server
Hi Sandro,

I think this issue has something to do with a recent change in thrift
(the git dev version). For a thrift snippet like:

enum X {
...
}

X foo();

thrift used to generate this prototype for foo:
X foo();

but now it generates "X::type foo();", resulting in the error you
encountered. The latest stable release of thrift at
http://incubator.apache.org/thrift/download/ should work.

If you are following the steps in that guide, all you need to modify
is to change the download url of thrift and the path of the extracted
files:
...
wget -O thrift.tgz "http://apache.mirrors.tds.net//incubator/thrift/
0.4.0-incubating/thrift-0.4.0.tar.gz"
tar -xzf thrift.tgz
cd thrift-0.4.0 && ./bootstrap.sh && ./configure && make && sudo
make install
...


Ying-Yi


On Oct 1, 3:06 am, Sandro Tosi <matrixh...@gmail.com> wrote:
> I already read the doc, with no luck.
>
> I followed now step-by-step the guide athttp://snippets.notmyidea.org/2009/07/29/howto-install-scribe-the-fac...
> >http://snippets.notmyidea.org/2009/07/29/howto-install-scribe-the-fac...
Reply all
Reply to author
Forward
0 new messages