naoqi_libqi Compilation errors

99 views
Skip to first unread message

vigneshp...@gmail.com

unread,
Sep 7, 2022, 9:00:14 AM9/7/22
to ROS Sig Aldebaran
Hi all,
I am trying to compile naoqi_libqi but am running into some errors.

System information:
OS: Ubuntu 22.04
ROS version: ROS2 Humble
Boost Version: 1.74 (Installed along with ROS from apt)
gcc version: 11.2.0
I initially got some errors about placeholders in src/log.cpp and src/application.cpp which I resolved by adding the following to both files:

#include <boost/bind.hpp>
using namespace boost::placeholders;

After that I am getting a new error potentially regarding reading and writing from boost::asio streams:
/home/user/pepper_ws/src/libqi/src/messaging/tcpmessagesocket.hpp:413:20:   required from here
/usr/include/boost/asio/impl/read.hpp:482:53: error: no type named ‘executor_type’ in ‘class qi::sock::SocketWithContext<qi::sock::NetworkAsio>’
  482 |     typedef typename AsyncReadStream::executor_type executor_type;
      |                                                     ^~~~~~~~~~~~~
.
.
.
/home/user/pepper_ws/src/libqi/src/messaging/tcpmessagesocket.hpp:648:8:   required from here
/usr/include/boost/asio/impl/write.hpp:447:54: error: no type named ‘executor_type’ in ‘class qi::sock::SocketWithContext<qi::sock::NetworkAsio>’
  447 |     typedef typename AsyncWriteStream::executor_type executor_type;
      |                                                      ^~~~~~~~~~~~~


The entire log can be seen here: https://pastebin.pl/view/d43c7a2a
I couldn't find much on the internet from this issue so any help is appreciated.

Thanks and Regards,
Vignesh Prasad

Victor Paléologue

unread,
Sep 7, 2022, 9:09:35 AM9/7/22
to ros-sig-...@googlegroups.com
The issue is due to libqi, which is not compatible with Boost 1.74.
Last time I tried, the higher version of Boost it supported was 1.69.

Checking their Github repository (https://github.com/aldebaran/libqi), I found that they had a version supporting Boost 1.77, starting from this commit: https://github.com/aldebaran/libqi/commit/fb3a5b5b0074bcec2d04e0a89e43ee646aa435e9

You could try to build the latest version on the branch team/platform/dev, and try to get in touch with them for further issues.

Regards,
Victor

--
You received this message because you are subscribed to the Google Groups "ROS Sig Aldebaran" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ros-sig-aldeba...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ros-sig-aldebaran/4bb01817-9735-48a0-814f-f32c8c75d79bn%40googlegroups.com.

vigneshp...@gmail.com

unread,
Sep 8, 2022, 11:41:02 AM9/8/22
to ROS Sig Aldebaran
HI Victor,
Thanks a lot for the pointers. I had earlier managed to compile aldebaran/libqi with both Boost 1.74 and 1.77 after making some changes that can seen in this pull request. I then copied all the source files and modified the CMakeLists.txt accordingly and then it compiled successfully on Ubuntu 22.04 and ROS2 Humble. Still have to test it out with the other naoqi packages.

A summary of it along with the modified CMakeLists.txt is available here: https://gist.github.com/souljaboy764/beadea15ecaf9a2cde18420e1da04871
Thanks and Regards,
Vignesh Prasad

Reply all
Reply to author
Forward
0 new messages