Project

General

Profile

Actions

Bug #2072

closed

NLSR doesn't compile with Boost 1.56

Added by Muktadir Chowdhury over 9 years ago. Updated over 9 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
Start date:
10/17/2014
Due date:
% Done:

100%

Estimated time:

Description

Well this is not a bug of NLSR, this is a problem with Boost 1.56. But reporting it just in case it would be helpful for others.
The solution of the problem can be found here:

https://chaste.cs.ox.ac.uk/trac/ticket/2585

The error I got without the fix was:

alvy$ ./waf distclean
'distclean' finished successfully (0.010s)
muktadirs-air:NLSR alvy$ ./waf configure
Setting top to : /Users/alvy/NLSR
Setting out to : /Users/alvy/NLSR/build
Checking for 'clang++' (C++ compiler) : /usr/bin/clang++
Checking allowed flags for c++ compiler : -std=c++03 -Wall -Wno-long-long -O2 -g
Checking for program 'doxygen' : /opt/local/bin/doxygen
Checking for program 'tar' : /usr/bin/tar
Checking for program 'sphinx-build' : /opt/local/bin/sphinx-build
Checking for program 'pkg-config' : /opt/local/bin/pkg-config
Checking for 'libndn-cxx' : yes
Checking for 'liblog4cxx' : yes
Checking boost includes : 1.56.0
Checking boost libs : ok
Checking for boost linkage : ok
Checking for 'protobuf' : yes
Checking for program 'protoc' : /opt/local/bin/protoc
'configure' finished successfully (2.374s)
muktadirs-air:NLSR alvy$ ./waf
Waf: Entering directory `/Users/alvy/NLSR/build'
[ 2/41] subst: src/version.hpp.in -> build/src/version.hpp
[ 2/41] protoc: nsync/sync-state.proto -> build/nsync/sync-state.pb.cc build/nsync/sync-state.pb.h
[ 3/41] cxx: src/main.cpp -> build/src/main.cpp.4.o
[ 4/41] cxx: src/sequencing-manager.cpp -> build/src/sequencing-manager.cpp.3.o
[ 5/41] cxx: src/route/nexthop-list.cpp -> build/src/route/nexthop-list.cpp.3.o
[ 6/41] cxx: src/route/map.cpp -> build/src/route/map.cpp.3.o
[ 7/41] cxx: src/lsa.cpp -> build/src/lsa.cpp.3.o
[ 8/41] cxx: src/conf-file-processor.cpp -> build/src/conf-file-processor.cpp.3.o
[ 9/41] cxx: src/communication/sync-logic-handler.cpp -> build/src/communication/sync-logic-handler.cpp.3.o
[10/41] cxx: build/nsync/sync-state.pb.cc -> build/nsync/sync-state.pb.cc.2.o
[11/41] cxx: nsync/sync-name-info.cc -> build/nsync/sync-name-info.cc.2.o
[12/41] cxx: nsync/sync-digest.cc -> build/nsync/sync-digest.cc.2.o
[13/41] cxx: nsync/sync-full-state.cc -> build/nsync/sync-full-state.cc.2.o
In file included from ../src/communication/sync-logic-handler.cpp:32:
In file included from /usr/local/include/boost/serialization/shared_ptr.hpp:28:
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:107:44: error: no member named 'singleton' in namespace 'boost::serialization'
return & boost::serialization::singleton<
~~~~~~~~~~~~~~~~~~~~^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:110:13: error: expected '(' for function-style cast or type construction
>::get_const_instance();
^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:110:16: error: no member named 'get_const_instance' in the global namespace
>::get_const_instance();
~~^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:117:42: error: no member named 'singleton' in namespace 'boost::serialization'
return boost::serialization::singleton<
~~
~~~~~~~~~~~~~~~~~~^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:120:13: error: expected '(' for function-style cast or type construction
>::get_const_instance().get_derived_extended_type_info(u);
^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:120:16: error: no member named 'get_const_instance' in the global namespace
>::get_const_instance().get_derived_extended_type_info(u);
~~^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:152:30: error: member access into incomplete type 'const boost::serialization::extended_type_info'
this_type->get_debug_info()
^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:42:7: note: forward declaration of 'boost::serialization::extended_type_info'
class extended_type_info;
^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:167:30: error: member access into incomplete type 'const boost::serialization::extended_type_info'
true_type->get_debug_info(),
^
/usr/local/include/boost/serialization/shared_ptr_helper.hpp:42:7: note: forward declaration of 'boost::serialization::extended_type_info'
class extended_type_info;
^
8 errors generated.

Waf: Leaving directory `/Users/alvy/NLSR/build'
Build failed
-> task in 'nlsr-objects' failed (exit status 1):
{task 4482737232: cxx sync-logic-handler.cpp -> sync-logic-handler.cpp.3.o}
['/usr/bin/clang++', '-std=c++03', '-Wall', '-Wno-long-long', '-O2', '-g', '-fPIC', '-I/Users/alvy/NLSR/build', '-I/Users/alvy/NLSR', '-I/Users/alvy/NLSR/build/src', '-I/Users/alvy/NLSR/src', '-I/Users/alvy/NLSR/build/nsync', '-I/Users/alvy/NLSR/nsync', '-I/usr/local/include', '-I/opt/local/include', '-D_THREAD_SAFE', '-D_THREAD_SAFE', '../src/communication/sync-logic-handler.cpp', '-c', '-o', '/Users/alvy/NLSR/build/src/communication/sync-logic-handler.cpp.3.o']

Actions #1

Updated by Alex Afanasyev over 9 years ago

  • Status changed from New to Code review
  • Assignee set to Alex Afanasyev
  • % Done changed from 0 to 100
Actions #2

Updated by Alex Afanasyev over 9 years ago

We don't really need boost::serialization. I have submitted a commit that simply removes usage of this library, which fixes the compilation issue.

Actions #3

Updated by Vince Lehman over 9 years ago

  • Status changed from Code review to Closed
Actions

Also available in: Atom PDF