> On Sept. 10, 2012, 6:35 p.m., Vinod Kone wrote: > > third_party/libprocess/include/process/protobuf.hpp, line 375 > > <https://reviews.apache.org/r/6988/diff/1/?file=152269#file152269line375> > > > > why was 'this' needed? > > John Sirois wrote: > The error pre-fix: > > libtool: compile: g++ -DPACKAGE_NAME=\"mesos\" > -DPACKAGE_TARNAME=\"mesos\" -DPACKAGE_VERSION=\"0.9.0\" > "-DPACKAGE_STRING=\"mesos 0.9.0\"" -DPACKAGE_BUGREPORT=\"\" > -DPACKAGE_URL=\"\" -DPACKAGE=\"mesos\" -DVERSION=\"0.9.0\" -DSTDC_HEADERS=1 > -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 > -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 > -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 > -DMESOS_HAS_JAVA=1 -DMESOS_HAS_PYTHON=1 -DMESOS_WEBUI=1 -I. -I../../src > -I../third_party/leveldb/include -Wall -Werror > -DMESOS_WEBUI_DIR=\"/usr/local/share/mesos/webui\" > -DMESOS_LIBEXECDIR=\"/usr/local/libexec/mesos\" -I../../include > -I../../third_party/libprocess/include -I../include > -I../third_party/boost-1.51.0 -I../third_party/protobuf-2.4.1/src > -I../third_party/glog-0.3.1/src > -I../third_party/zookeeper-3.3.4/src/c/include > -I../third_party/zookeeper-3.3.4/src/c/generated -pthread -g2 -O2 -MT > log/liblog_la-coordinator.lo -MD -MP -MF log/.deps/liblog_la-coordinator.Tpo > -c ../../src/log/coordinator.cpp -fPIC -DPIC -o > log/.libs/liblog_la-coordinator.o > In file included from ../../src/log/network.hpp:30:0, > from ../../src/log/coordinator.hpp:30, > from ../../src/log/coordinator.cpp:27: > ../../third_party/libprocess/include/process/protobuf.hpp: In > instantiation of 'process::Future<X> ReqResProcess<Req, Res>::run() [with Req > = mesos::internal::log::WriteRequest; Res = > mesos::internal::log::WriteResponse]': > ../../third_party/libprocess/include/process/protobuf.hpp:411:68: > required from 'process::Future<X> Protocol<Req, Res>::operator()(const > process::UPID&, const Req&) const [with Req = > mesos::internal::log::WriteRequest; Res = > mesos::internal::log::WriteResponse]' > ../../src/log/coordinator.cpp:338:73: required from here > ../../third_party/libprocess/include/process/protobuf.hpp:375:5: error: > 'send' was not declared in this scope, and no declarations were found by > argument-dependent lookup at the point of instantiation [-fpermissive] > ../../third_party/libprocess/include/process/protobuf.hpp:375:5: note: > declarations in dependent base 'process::ProcessBase' are not found by > unqualified lookup > ../../third_party/libprocess/include/process/protobuf.hpp:375:5: note: > use 'this->send' instead > ../../third_party/libprocess/include/process/protobuf.hpp: In > instantiation of 'process::Future<X> ReqResProcess<Req, Res>::run() [with Req > = mesos::internal::log::PromiseRequest; Res = > mesos::internal::log::PromiseResponse]': > ../../third_party/libprocess/include/process/protobuf.hpp:411:68: > required from 'process::Future<X> Protocol<Req, Res>::operator()(const > process::UPID&, const Req&) const [with Req = > mesos::internal::log::PromiseRequest; Res = > mesos::internal::log::PromiseResponse]' > ../../src/log/network.hpp:154:9: required from > 'std::set<process::Future<X> > NetworkProcess::broadcast(const Protocol<Req, > Res>&, const Req&, const std::set<process::UPID>&) [with Req = > mesos::internal::log::PromiseRequest; Res = > mesos::internal::log::PromiseResponse]' > ../../src/log/network.hpp:230:49: required from > 'process::Future<std::set<process::Future<X> > > Network::broadcast(const > Protocol<Req, Res>&, const Req&, const std::set<process::UPID>&) [with Req = > mesos::internal::log::PromiseRequest; Res = > mesos::internal::log::PromiseResponse]' > ../../src/log/coordinator.cpp:501:37: required from > 'std::set<process::Future<X> > > mesos::internal::log::Coordinator::broadcast(const Protocol<Req, Res>&, const > Req&) [with Req = mesos::internal::log::PromiseRequest; Res = > mesos::internal::log::PromiseResponse]' > ../../src/log/coordinator.cpp:82:41: required from here > ../../third_party/libprocess/include/process/protobuf.hpp:375:5: error: > 'send' was not declared in this scope, and no declarations were found by > argument-dependent lookup at the point of instantiation [-fpermissive] > ../../third_party/libprocess/include/process/protobuf.hpp:375:5: note: > declarations in dependent base 'process::ProcessBase' are not found by > unqualified lookup > ../../third_party/libprocess/include/process/protobuf.hpp:375:5: note: > use 'this->send' instead > make[2]: *** [log/liblog_la-coordinator.lo] Error 1 > make[2]: Leaving directory > `/home/jsirois/development/3rdparty/mesos/build/src' > make[1]: *** [all] Error 2 > make[1]: Leaving directory > `/home/jsirois/development/3rdparty/mesos/build/src' > make: *** [all-recursive] Error 1
bizarre, but i guess 'Namespace lookups' in http://gcc.gnu.org/gcc-4.7/porting_to.html explains it. - Vinod ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/6988/#review11260 ----------------------------------------------------------- On Sept. 10, 2012, 6:10 p.m., John Sirois wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/6988/ > ----------------------------------------------------------- > > (Updated Sept. 10, 2012, 6:10 p.m.) > > > Review request for mesos, Benjamin Hindman, Vinod Kone, and Ben Mahler. > > > Description > ------- > > commit 2e1404f2630c561e586c6eb488f71d26ede1b4c7 > Author: jsirois <[email protected]> > Date: Mon Sep 10 14:01:26 2012 -0400 > > Get mesos compiling under gcc-4.7 > > src/examples/long_lived_executor.cpp | 1 + > third_party/boost-1.51.0.tar.gz | Bin 7203699 -> > 7469124 bytes > third_party/libprocess/include/process/protobuf.hpp | 2 +- > third_party/libprocess/include/stout/multihashmap.hpp | 17 ++++++++++------- > 4 files changed, 12 insertions(+), 8 deletions(-) > > > This addresses bug MESOS-271. > https://issues.apache.org/jira/browse/MESOS-271 > > > Diffs > ----- > > src/examples/long_lived_executor.cpp bb38873 > third_party/boost-1.51.0.tar.gz e461b8a > third_party/libprocess/include/process/protobuf.hpp 5911c59 > third_party/libprocess/include/stout/multihashmap.hpp 6d324d4 > > Diff: https://reviews.apache.org/r/6988/diff/ > > > Testing > ------- > > [jsirois@gill build] (jsirois/MESOS-271) $ gcc --version > gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5) > Copyright (C) 2012 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. There is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. > > [jsirois@gill build] (jsirois/MESOS-271) $ make check > ... > [ OK ] AllocatorZooKeeperTest/0.SlaveReregisterFirst (1452 ms) > [----------] 2 tests from AllocatorZooKeeperTest/0 (3622 ms total) > > [----------] Global test environment tear-down > [==========] 180 tests from 36 test cases ran. (92375 ms total) > [ PASSED ] 179 tests. > [ FAILED ] 1 test, listed below: > [ FAILED ] FsTest.FileSystemTableRead > > 1 FAILED TEST > YOU HAVE 6 DISABLED TESTS > > FAIL: mesos-tests > ================== > 1 of 1 test failed > ================== > make[3]: *** [check-TESTS] Error 1 > make[3]: Leaving directory > `/home/jsirois/development/3rdparty/mesos/build/src' > make[2]: *** [check-am] Error 2 > make[2]: Leaving directory > `/home/jsirois/development/3rdparty/mesos/build/src' > make[1]: *** [check] Error 2 > make[1]: Leaving directory > `/home/jsirois/development/3rdparty/mesos/build/src' > make: *** [check-recursive] Error 1 > > > Thanks, > > John Sirois > >
