Ask Your Question
0

Error building nodelet under osx Lion

asked 2011-12-05 02:53:15 -0500

LucaGhera gravatar image LucaGhera
118 19 19 27

updated 2012-02-24 20:18:15 -0500

Kevin gravatar image Kevin flag of United States
2375 40 69 100
http://www.ros.org/

Hi,

I'm trying to install the Openni_camera stak in Osx Lion. Unfortunately I have a problem building nodelet. Please find below the log.

It seems to be a problem of dependency with tinyxml:

Lucas-MacBook-Pro:nodelet luca$ rosmake --rosdep-install
[ rosmake ] No package specified.  Building ['nodelet']                                                             
[ rosmake ] Packages requested are: ['nodelet']                                                                     
[ rosmake ] Logging to directory/Users/luca/.ros/rosmake/rosmake_output-20111205-115042                             
[ rosmake ] Expanded args ['nodelet'] to:
['nodelet']                                                               
[ rosmake ] Generating Install Script using rosdep then executing. This may take a minute, you will be prompted for permissions. . .
Failed to find rosdep tinyxml for package nodelet on OS:osx version:lion
[ rosmake ] rosdep install failed: Rosdep install failed

However tinyxml is installed through MacPort.

Is there a known solution? Thanks.

This is the log of rosmake nodelet (compiled with clang):

mkdir -p bin
cd build && cmake -Wdev -DCMAKE_TOOLCHAIN_FILE=`rospack find rosbuild`/rostoolchain.cmake  ..
[rosbuild] Building package nodelet
[rosbuild] Including /Users/luca/Software/ros/electric/ros_comm/clients/roslisp/cmake/roslisp.cmake
[rosbuild] Including /Users/luca/Software/ros/electric/ros_comm/clients/rospy/cmake/rospy.cmake
[rosbuild] Including /Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/cmake/roscpp.cmake
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_TOOLCHAIN_FILE


-- Build files have been written to: /Users/luca/Software/ros/electric/nodelet_core/nodelet/build
cd build && make -l8
[  0%] Built target rospack_genmsg_libexe
[  0%] Built target rosbuild_premsgsrvgen
[ 20%] Built target ROSBUILD_gensrv_cpp
[ 40%] Built target ROSBUILD_gensrv_lisp
[ 66%] Built target ROSBUILD_gensrv_py
[ 66%] Built target rospack_gensrv
[ 66%] Built target rosbuild_precompile
[ 73%] Building CXX object CMakeFiles/nodeletlib.dir/src/loader.o
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:30:
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/loader.h:43:
/Users/luca/Software/ros/electric/bond_core/bondcpp/include/bondcpp/bond.h:172:1: warning: 'BondSM' defined as a struct here but previously declared as a class [-Wmismatched-tags]
struct BondSM
^
/Users/luca/Software/ros/electric/bond_core/bondcpp/include/BondSM_sm.h:25:1: note: did you mean struct here?
class BondSM;
^~~~~
struct
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:32:
/Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/detail/callback_queue_manager.h:76:3: warning: class 'ThreadInfo' was previously declared as a struct [-Wmismatched-tags]
  class ThreadInfo;
  ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/detail/callback_queue_manager.h:73:10: note: previous use is here
  struct ThreadInfo;
         ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/detail/callback_queue_manager.h:109:3: warning: 'ThreadInfo' defined as a struct here but previously declared as a class [-Wmismatched-tags]
  struct ThreadInfo
  ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/detail/callback_queue_manager.h:76:3: note: did you mean struct here?
  class ThreadInfo;
  ^~~~~
  struct
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:33:
In file included from /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader.h:237:
/Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:62:16: error: no matching member function for call to 'LoadFile'
      document.LoadFile(*it);
      ~~~~~~~~~^~~~~~~~
/opt/local/include/tinyxml.h:1415:7: note: candidate function not viable: no known conversion from 'std::basic_string<char>' to 'TiXmlEncoding' for 1st argument
        bool LoadFile( TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
             ^
/opt/local/include/tinyxml.h:1419:7: note: candidate function not viable: no known conversion from 'std::basic_string<char>' to 'const char *' for 1st argument
        bool LoadFile( const char * filename, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
             ^
/opt/local/include/tinyxml.h:1427:7: note: candidate function not viable: no known conversion from 'std::basic_string<char>' to 'FILE *' (aka '__sFILE *') for 1st argument
        bool LoadFile( FILE*, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING );
             ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:33:
In file included from /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader.h:237:
/Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:69:19: error: no member named 'ValueStr' in 'TiXmlElement'; did you mean 'ValueTStr'?
      if (config->ValueStr() != "library" &&
                  ^~~~~~~~
                  ValueTStr
/opt/local/include/tinyxml.h:497:22: note: 'ValueTStr' declared here
        const TIXML_STRING& ValueTStr() const { return value; }
                            ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:33:
In file included from /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader.h:237:
/Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:70:19: error: no member named 'ValueStr' in 'TiXmlElement'; did you mean 'ValueTStr'?
          config->ValueStr() != "class_libraries")
                  ^~~~~~~~
                  ValueTStr
/opt/local/include/tinyxml.h:497:22: note: 'ValueTStr' declared here
        const TIXML_STRING& ValueTStr() const { return value; }
                            ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:33:
In file included from /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader.h:237:
/Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:77:19: error: no member named 'ValueStr' in 'TiXmlElement'; did you mean 'ValueTStr'?
      if (config->ValueStr() == "class_libraries")
                  ^~~~~~~~
                  ValueTStr
/opt/local/include/tinyxml.h:497:22: note: 'ValueTStr' declared here
        const TIXML_STRING& ValueTStr() const { return value; }
                            ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:30:
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/loader.h:41:
In file included from /opt/local/include/boost/shared_ptr.hpp:17:
In file included from /opt/local/include/boost/smart_ptr/shared_ptr.hpp:30:
/opt/local/include/boost/checked_delete.hpp:34:5: warning: delete called on 'nodelet::NodeletLoadRequest_<std::allocator<void> >' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete x;
    ^
/opt/local/include/boost/smart_ptr/detail/shared_count.hpp:95:13: note: in instantiation of function template specialization 'boost::checked_delete<nodelet::NodeletLoadRequest_<std::allocator<void> > >' requested here
            boost::checked_delete( p );
            ^
/opt/local/include/boost/smart_ptr/shared_ptr.hpp:183:44: note: in instantiation of function template specialization 'boost::detail::shared_count::shared_count<nodelet::NodeletLoadRequest_<std::allocator<void> > >' requested here
    explicit shared_ptr( Y * p ): px( p ), pn( p ) // Y must be complete
                                           ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:70:10: note: in instantiation of function template specialization 'boost::shared_ptr<nodelet::NodeletLoadRequest_<std::allocator<void> > >::shared_ptr<nodelet::NodeletLoadRequest_<std::allocator<void> > >' requested here
  return boost::shared_ptr<M>(new M);
         ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:178:55: note: in instantiation of function template specialization 'ros::defaultServiceCreateFunction<nodelet::NodeletLoadRequest_<std::allocator<void> > >' requested here
                         static_cast<RequestPtr(*)()>(defaultServiceCreateFunction<RequestType>), 
                                                      ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/node_handle.h:824:18: note: in instantiation of function template specialization 'ros::AdvertiseServiceOptions::init<nodelet::NodeletLoadRequest_<std::allocator<void> >, nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
    ops.template init<MReq, MRes>(service, boost::bind(srv_func, obj, _1, _2));
                 ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:58:24: note: in instantiation of function template specialization 'ros::NodeHandle::advertiseService<nodelet::detail::LoaderROS, nodelet::NodeletLoadRequest_<std::allocator<void> >, nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
    load_server_ = nh_.advertiseService("load_nodelet", &LoaderROS::serviceLoad, this);
                       ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:30:
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/loader.h:41:
In file included from /opt/local/include/boost/shared_ptr.hpp:17:
In file included from /opt/local/include/boost/smart_ptr/shared_ptr.hpp:30:
/opt/local/include/boost/checked_delete.hpp:34:5: warning: delete called on 'nodelet::NodeletLoadResponse_<std::allocator<void> >' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete x;
    ^
/opt/local/include/boost/smart_ptr/detail/shared_count.hpp:95:13: note: in instantiation of function template specialization 'boost::checked_delete<nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
            boost::checked_delete( p );
            ^
/opt/local/include/boost/smart_ptr/shared_ptr.hpp:183:44: note: in instantiation of function template specialization 'boost::detail::shared_count::shared_count<nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
    explicit shared_ptr( Y * p ): px( p ), pn( p ) // Y must be complete
                                           ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:70:10: note: in instantiation of function template specialization 'boost::shared_ptr<nodelet::NodeletLoadResponse_<std::allocator<void> > >::shared_ptr<nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
  return boost::shared_ptr<M>(new M);
         ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:180:56: note: in instantiation of function template specialization 'ros::defaultServiceCreateFunction<nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
                         static_cast<ResponsePtr(*)()>(defaultServiceCreateFunction<ResponseType>))
                                                       ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/node_handle.h:824:18: note: in instantiation of function template specialization 'ros::AdvertiseServiceOptions::init<nodelet::NodeletLoadRequest_<std::allocator<void> >, nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
    ops.template init<MReq, MRes>(service, boost::bind(srv_func, obj, _1, _2));
                 ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:58:24: note: in instantiation of function template specialization 'ros::NodeHandle::advertiseService<nodelet::detail::LoaderROS, nodelet::NodeletLoadRequest_<std::allocator<void> >, nodelet::NodeletLoadResponse_<std::allocator<void> > >' requested here
    load_server_ = nh_.advertiseService("load_nodelet", &LoaderROS::serviceLoad, this);
                       ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:30:
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/loader.h:41:
In file included from /opt/local/include/boost/shared_ptr.hpp:17:
In file included from /opt/local/include/boost/smart_ptr/shared_ptr.hpp:30:
/opt/local/include/boost/checked_delete.hpp:34:5: warning: delete called on 'nodelet::NodeletUnloadRequest_<std::allocator<void> >' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete x;
    ^
/opt/local/include/boost/smart_ptr/detail/shared_count.hpp:95:13: note: in instantiation of function template specialization 'boost::checked_delete<nodelet::NodeletUnloadRequest_<std::allocator<void> > >' requested here
            boost::checked_delete( p );
            ^
/opt/local/include/boost/smart_ptr/shared_ptr.hpp:183:44: note: in instantiation of function template specialization 'boost::detail::shared_count::shared_count<nodelet::NodeletUnloadRequest_<std::allocator<void> > >' requested here
    explicit shared_ptr( Y * p ): px( p ), pn( p ) // Y must be complete
                                           ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:70:10: note: in instantiation of function template specialization 'boost::shared_ptr<nodelet::NodeletUnloadRequest_<std::allocator<void> > >::shared_ptr<nodelet::NodeletUnloadRequest_<std::allocator<void> > >' requested here
  return boost::shared_ptr<M>(new M);
         ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:178:55: note: in instantiation of function template specialization 'ros::defaultServiceCreateFunction<nodelet::NodeletUnloadRequest_<std::allocator<void> > >' requested here
                         static_cast<RequestPtr(*)()>(defaultServiceCreateFunction<RequestType>), 
                                                      ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/node_handle.h:824:18: note: in instantiation of function template specialization 'ros::AdvertiseServiceOptions::init<nodelet::NodeletUnloadRequest_<std::allocator<void> >, nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
    ops.template init<MReq, MRes>(service, boost::bind(srv_func, obj, _1, _2));
                 ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:59:26: note: in instantiation of function template specialization 'ros::NodeHandle::advertiseService<nodelet::detail::LoaderROS, nodelet::NodeletUnloadRequest_<std::allocator<void> >, nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
    unload_server_ = nh_.advertiseService("unload_nodelet", &LoaderROS::serviceUnload, this);
                         ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:30:
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/loader.h:41:
In file included from /opt/local/include/boost/shared_ptr.hpp:17:
In file included from /opt/local/include/boost/smart_ptr/shared_ptr.hpp:30:
/opt/local/include/boost/checked_delete.hpp:34:5: warning: delete called on 'nodelet::NodeletUnloadResponse_<std::allocator<void> >' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete x;
    ^
/opt/local/include/boost/smart_ptr/detail/shared_count.hpp:95:13: note: in instantiation of function template specialization 'boost::checked_delete<nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
            boost::checked_delete( p );
            ^
/opt/local/include/boost/smart_ptr/shared_ptr.hpp:183:44: note: in instantiation of function template specialization 'boost::detail::shared_count::shared_count<nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
    explicit shared_ptr( Y * p ): px( p ), pn( p ) // Y must be complete
                                           ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:70:10: note: in instantiation of function template specialization 'boost::shared_ptr<nodelet::NodeletUnloadResponse_<std::allocator<void> > >::shared_ptr<nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
  return boost::shared_ptr<M>(new M);
         ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:180:56: note: in instantiation of function template specialization 'ros::defaultServiceCreateFunction<nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
                         static_cast<ResponsePtr(*)()>(defaultServiceCreateFunction<ResponseType>))
                                                       ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/node_handle.h:824:18: note: in instantiation of function template specialization 'ros::AdvertiseServiceOptions::init<nodelet::NodeletUnloadRequest_<std::allocator<void> >, nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
    ops.template init<MReq, MRes>(service, boost::bind(srv_func, obj, _1, _2));
                 ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:59:26: note: in instantiation of function template specialization 'ros::NodeHandle::advertiseService<nodelet::detail::LoaderROS, nodelet::NodeletUnloadRequest_<std::allocator<void> >, nodelet::NodeletUnloadResponse_<std::allocator<void> > >' requested here
    unload_server_ = nh_.advertiseService("unload_nodelet", &LoaderROS::serviceUnload, this);
                         ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:30:
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/loader.h:41:
In file included from /opt/local/include/boost/shared_ptr.hpp:17:
In file included from /opt/local/include/boost/smart_ptr/shared_ptr.hpp:30:
/opt/local/include/boost/checked_delete.hpp:34:5: warning: delete called on 'nodelet::NodeletListRequest_<std::allocator<void> >' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete x;
    ^
/opt/local/include/boost/smart_ptr/detail/shared_count.hpp:95:13: note: in instantiation of function template specialization 'boost::checked_delete<nodelet::NodeletListRequest_<std::allocator<void> > >' requested here
            boost::checked_delete( p );
            ^
/opt/local/include/boost/smart_ptr/shared_ptr.hpp:183:44: note: in instantiation of function template specialization 'boost::detail::shared_count::shared_count<nodelet::NodeletListRequest_<std::allocator<void> > >' requested here
    explicit shared_ptr( Y * p ): px( p ), pn( p ) // Y must be complete
                                           ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:70:10: note: in instantiation of function template specialization 'boost::shared_ptr<nodelet::NodeletListRequest_<std::allocator<void> > >::shared_ptr<nodelet::NodeletListRequest_<std::allocator<void> > >' requested here
  return boost::shared_ptr<M>(new M);
         ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:178:55: note: in instantiation of function template specialization 'ros::defaultServiceCreateFunction<nodelet::NodeletListRequest_<std::allocator<void> > >' requested here
                         static_cast<RequestPtr(*)()>(defaultServiceCreateFunction<RequestType>), 
                                                      ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/node_handle.h:824:18: note: in instantiation of function template specialization 'ros::AdvertiseServiceOptions::init<nodelet::NodeletListRequest_<std::allocator<void> >, nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
    ops.template init<MReq, MRes>(service, boost::bind(srv_func, obj, _1, _2));
                 ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:60:24: note: in instantiation of function template specialization 'ros::NodeHandle::advertiseService<nodelet::detail::LoaderROS, nodelet::NodeletListRequest_<std::allocator<void> >, nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
    list_server_ = nh_.advertiseService("list", &LoaderROS::serviceList, this);
                       ^
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:30:
In file included from /Users/luca/Software/ros/electric/nodelet_core/nodelet/include/nodelet/loader.h:41:
In file included from /opt/local/include/boost/shared_ptr.hpp:17:
In file included from /opt/local/include/boost/smart_ptr/shared_ptr.hpp:30:
/opt/local/include/boost/checked_delete.hpp:34:5: warning: delete called on 'nodelet::NodeletListResponse_<std::allocator<void> >' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete x;
    ^
/opt/local/include/boost/smart_ptr/detail/shared_count.hpp:95:13: note: in instantiation of function template specialization 'boost::checked_delete<nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
            boost::checked_delete( p );
            ^
/opt/local/include/boost/smart_ptr/shared_ptr.hpp:183:44: note: in instantiation of function template specialization 'boost::detail::shared_count::shared_count<nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
    explicit shared_ptr( Y * p ): px( p ), pn( p ) // Y must be complete
                                           ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:70:10: note: in instantiation of function template specialization 'boost::shared_ptr<nodelet::NodeletListResponse_<std::allocator<void> > >::shared_ptr<nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
  return boost::shared_ptr<M>(new M);
         ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/service_callback_helper.h:180:56: note: in instantiation of function template specialization 'ros::defaultServiceCreateFunction<nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
                         static_cast<ResponsePtr(*)()>(defaultServiceCreateFunction<ResponseType>))
                                                       ^
/Users/luca/Software/ros/electric/ros_comm/clients/cpp/roscpp/include/ros/node_handle.h:824:18: note: in instantiation of function template specialization 'ros::AdvertiseServiceOptions::init<nodelet::NodeletListRequest_<std::allocator<void> >, nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
    ops.template init<MReq, MRes>(service, boost::bind(srv_func, obj, _1, _2));
                 ^
/Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:60:24: note: in instantiation of function template specialization 'ros::NodeHandle::advertiseService<nodelet::detail::LoaderROS, nodelet::NodeletListRequest_<std::allocator<void> >, nodelet::NodeletListResponse_<std::allocator<void> > >' requested here
    list_server_ = nh_.advertiseService("list", &LoaderROS::serviceList, this);
                       ^
9 warnings and 4 errors generated.
make[3]: *** [CMakeFiles/nodeletlib.dir/src/loader.o] Error 1
make[2]: *** [CMakeFiles/nodeletlib.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [all] Error 2

EDIT 1

This is the errors received by chanching the compiler to llvm-g++

  -- Build files have been written to: /Users/luca/Software/ros/electric/nodelet_core/nodelet/build
  cd build && make -l8
  [  0%] Built target rospack_genmsg_libexe
  [  0%] Built target rosbuild_premsgsrvgen
  [ 20%] Built target ROSBUILD_gensrv_cpp
  [ 40%] Built target ROSBUILD_gensrv_lisp
  [ 66%] Built target ROSBUILD_gensrv_py
  [ 66%] Built target rospack_gensrv
  [ 66%] Built target rosbuild_precompile
  [ 73%] Building CXX object CMakeFiles/nodeletlib.dir/src/nodelet_class.o
  [ 80%] Building CXX object CMakeFiles/nodeletlib.dir/src/loader.o
  In file included from /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader.h:237,
                   from /Users/luca/Software/ros/electric/nodelet_core/nodelet/src/loader.cpp:34:
  /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h: In constructor ‘pluginlib::ClassLoader<T>::ClassLoader(std::string, std::string, std::string)’:
  /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:62: error: no matching function for call to ‘TiXmlDocument::LoadFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)’
  /opt/local/include/tinyxml.h:1415: note: candidates are: bool TiXmlDocument::LoadFile(TiXmlEncoding)
  /opt/local/include/tinyxml.h:1419: note:                 bool TiXmlDocument::LoadFile(const char*, TiXmlEncoding)
  /opt/local/include/tinyxml.h:1427: note:                 bool TiXmlDocument::LoadFile(FILE*, TiXmlEncoding)
  /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:69: error: ‘class TiXmlElement’ has no member named ‘ValueStr’
  /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:70: error: ‘class TiXmlElement’ has no member named ‘ValueStr’
  /Users/luca/Software/ros/electric/pluginlib/include/pluginlib/class_loader_imp.h:77: error: ‘class TiXmlElement’ has no member named ‘ValueStr’
  make[3]: *** [CMakeFiles/nodeletlib.dir/src/loader.o] Error 1
  make[2]: *** [CMakeFiles/nodeletlib.dir/all] Error 2
  make[1]: *** [all] Error 2
edit retag flag offensive close delete

3 Answers

Sort by » oldest newest most voted
1

answered 2011-12-05 18:01:26 -0500

Kevin gravatar image Kevin flag of United States
2375 40 69 100
http://www.ros.org/

If you are not married to Macports, William Woodall has also done a lot of good work getting ROS up and running using Homebrew. This is how I installed ROS on Lion and it was pretty painless.

However, having said that, I have not gotten OpenNI.org drivers working on OSX. I have gotten the freenectlib ones to work.

edit flag offensive delete publish link more
1

answered 2011-12-06 15:08:50 -0500

William gravatar image William
2161 13 29 55
http://williamjwoodall.co...

I am not sure what the issue here is, it might be because you appear to be using clang++. Perhaps try using llvm-g++ instead. If that doesn't work, file a ticket.

edit flag offensive delete publish link more

Comments

@William I tried, still error. Please see the log in the edited question. LucaGhera ( 2011-12-08 10:17:17 -0500 )edit
1

answered 2011-12-21 21:36:54 -0500

Paul Vernaza gravatar image Paul Vernaza
171 1 3 9

updated 2011-12-21 21:37:27 -0500

I encountered this problem elsewhere, and I think this is due to a bug in pluginlib. In that package's include/class_loader.h, after

#define PLUGINLIB_CLASS_LOADER_H

try adding

#define TIXML_USE_STL

edit flag offensive delete publish link more

Comments

This worked for me when compiling on Angstrom (embedded Linux).

NStiurca ( 2013-02-11 19:22:43 -0500 )edit

Your answer

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!

[hide preview]

Question tools

Follow

subscribe to rss feed

Stats

Asked: 2011-12-05 02:53:15 -0500

Seen: 289 times

Last updated: Dec 21 '11