-
Notifications
You must be signed in to change notification settings - Fork 983
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
catkin_make 0.7a - lock_guard #74
Comments
Seems that gcc 4.6 dont recognize c++11 using like typedef. Please try replace this with 1 августа 2014 г. 22:19:08 Московское летнее время, TSC21 notifications@github.com пишет:
Простите за краткость, |
Ok solved by doing: But now I'm with another error in mavconn_tcp: /home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In constructor ‘mavconn::MAVConnTCPClient::MAVConnTCPClient(uint8_t, uint8_t, boost::asio::io_service&, int, boost::asio::ip::tcp::socket&, boost::asio::ip::tcp::endpoint&)’: |
Next broken think is Please add gcc and boost versions. |
Don't undertand. Add where? You want to know or have to add it somewhere? |
Just because i use latest tools i can't test on older machines. But ros buildfarm does that for me (hydro devel). I want replace most of boost thinks with C++11 (e.g. thread & mutex). And current master generates segfault on mavconn-test, so i need some time to find out source. |
Hi @vooon,
I'm trying to compile your last version of the code (since you return to asio) but I get the following:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:36:7: error: expected nested-name-specifier before ‘lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:36:7: error: ‘lock_guard’ has not been declared
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:36:18: error: expected ‘;’ before ‘=’ token
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:36:18: error: expected unqualified-id before ‘=’ token
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:36:7: error: expected nested-name-specifier before ‘lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:36:7: error: ‘lock_guard’ has not been declared
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:36:18: error: expected ‘;’ before ‘=’ token
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:36:18: error: expected unqualified-id before ‘=’ token
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp: In member function ‘virtual void mavconn::MAVConnSerial::close()’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:76:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:76:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:76:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp: In member function ‘virtual void mavconn::MAVConnSerial::send_bytes(const uint8_t_, size_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:98:3: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:98:3: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:98:14: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp: In member function ‘virtual void mavconn::MAVConnUDP::close()’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:109:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:109:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:109:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp: In member function ‘virtual void mavconn::MAVConnUDP::send_bytes(const uint8_t_, size_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:137:3: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:137:3: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:137:14: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp: In member function ‘virtual void mavconn::MAVConnSerial::send_message(const mavlink_message_t_, uint8_t, uint8_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:129:3: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:129:3: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:129:14: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:36:7: error: expected nested-name-specifier before ‘lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:36:7: error: ‘lock_guard’ has not been declared
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:36:18: error: expected ‘;’ before ‘=’ token
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:36:18: error: expected unqualified-id before ‘=’ token
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp: In member function ‘virtual void mavconn::MAVConnUDP::send_message(const mavlink_message_t_, uint8_t, uint8_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:174:3: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:174:3: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:174:14: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp: In member function ‘void mavconn::MAVConnSerial::do_write(bool)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:173:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:173:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:173:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp: In member function ‘void mavconn::MAVConnSerial::async_write_end(boost::system::error_code, size_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:194:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:194:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_serial.cpp:194:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp: In member function ‘void mavconn::MAVConnUDP::do_sendto(bool)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:225:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:225:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:225:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp: In member function ‘void mavconn::MAVConnUDP::async_sendto_end(boost::system::error_code, size_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:247:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:247:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_udp.cpp:247:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In constructor ‘mavconn::MAVConnTCPClient::MAVConnTCPClient(uint8_t, uint8_t, boost::asio::io_service&, int, boost::asio::ip::tcp::socket&, boost::asio::ip::tcp::endpoint&)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:100:32: error: use of deleted function ‘boost::asio::basic_stream_socketboost::asio::ip::tcp::basic_stream_socket(const boost::asio::basic_stream_socketboost::asio::ip::tcp&)’
In file included from /usr/include/boost/asio.hpp:28:0,
from /home/vision/vision_ros_ws/src/mavros/include/mavros/mavconn_tcp.h:31,
from /home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:27:
/usr/include/boost/asio/basic_stream_socket.hpp:44:7: error: ‘boost::asio::basic_stream_socketboost::asio::ip::tcp::basic_stream_socket(const boost::asio::basic_stream_socketboost::asio::ip::tcp&)’ is implicitly deleted because the default definition would be ill-formed:
/usr/include/boost/asio/basic_stream_socket.hpp:44:7: error: use of deleted function ‘boost::asio::basic_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >::basic_socket(const boost::asio::basic_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >&)’
In file included from /usr/include/boost/asio/basic_datagram_socket.hpp:20:0,
from /usr/include/boost/asio.hpp:20,
from /home/vision/vision_ros_ws/src/mavros/include/mavros/mavconn_tcp.h:31,
from /home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:27:
/usr/include/boost/asio/basic_socket.hpp:39:7: error: ‘boost::asio::basic_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >::basic_socket(const boost::asio::basic_socket<boost::asio::ip::tcp, boost::asio::stream_socket_serviceboost::asio::ip::tcp >&)’ is implicitly deleted because the default definition would be ill-formed:
/usr/include/boost/asio/basic_socket.hpp:39:7: error: use of deleted function ‘boost::asio::basic_io_objectboost::asio::stream_socket_service<boost::asio::ip::tcp >::basic_io_object(const boost::asio::basic_io_objectboost::asio::stream_socket_service<boost::asio::ip::tcp >&)’
In file included from /usr/include/boost/asio/basic_socket.hpp:19:0,
from /usr/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/include/boost/asio.hpp:20,
from /home/vision/vision_ros_ws/src/mavros/include/mavros/mavconn_tcp.h:31,
from /home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:27:
/usr/include/boost/asio/basic_io_object.hpp:29:7: error: ‘boost::asio::basic_io_objectboost::asio::stream_socket_service<boost::asio::ip::tcp >::basic_io_object(const boost::asio::basic_io_objectboost::asio::stream_socket_service<boost::asio::ip::tcp >&)’ is implicitly deleted because the default definition would be ill-formed:
/usr/include/boost/noncopyable.hpp:27:7: error: ‘boost::noncopyable_::noncopyable::noncopyable(const boost::noncopyable_::noncopyable&)’ is private
/usr/include/boost/asio/basic_io_object.hpp:29:7: error: within this context
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘virtual void mavconn::MAVConnTCPClient::close()’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:115:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:115:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:115:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘virtual void mavconn::MAVConnTCPClient::send_bytes(const uint8_t_, size_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:138:3: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:138:3: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:138:14: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘virtual void mavconn::MAVConnTCPClient::send_message(const mavlink_message_t_, uint8_t, uint8_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:170:3: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:170:3: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:170:14: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘void mavconn::MAVConnTCPClient::do_send(bool)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:214:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:214:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:214:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘void mavconn::MAVConnTCPClient::async_send_end(boost::system::error_code, size_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:235:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:235:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:235:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘virtual void mavconn::MAVConnTCPServer::close()’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:291:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:291:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:291:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘virtual void mavconn::MAVConnTCPServer::send_bytes(const uint8_t_, size_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:322:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:322:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:322:13: error: expected ‘;’ before ‘lock’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp: In member function ‘virtual void mavconn::MAVConnTCPServer::send_message(const mavlink_message_t_, uint8_t, uint8_t)’:
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:331:2: error: ‘lock_guard’ was not declared in this scope
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:331:2: note: suggested alternatives:
/usr/include/c++/4.6/mutex:439:11: note: ‘std::lock_guard’
/usr/include/boost/thread/locks.hpp:246:11: note: ‘boost::lock_guard’
/home/vision/vision_ros_ws/src/mavros/src/mavconn/mavconn_tcp.cpp:331:13: error: expected ‘;’ before ‘lock’
make[2]: *** [mavros/CMakeFiles/mavconn.dir/src/mavconn/mavconn_serial.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [mavros/CMakeFiles/mavconn.dir/src/mavconn/mavconn_udp.cpp.o] Error 1
make[2]: *** [mavros/CMakeFiles/mavconn.dir/src/mavconn/mavconn_tcp.cpp.o] Error 1
make[1]: *** [mavros/CMakeFiles/mavconn.dir/all] Error 2
make: *** [all] Error 2
Invoking "make" failed
Do you know what's the problem with lock_guard?
The text was updated successfully, but these errors were encountered: