Robotics StackExchange | Archived questions

ROS2 build fail Turtlebot3 package

Following instructions from: http://emanual.robotis.com/docs/en/platform/turtlebot3/ros2/ For installing ROS2 for Turtlebot3. Turtlebot3 is running Raspbian Stretch with Desktop 4.19.

Error pops up after instructions:

$ cd tb3_sbc_settings
$ ./install.sh

Unable to debug the installation issue of Micro-XRCE-DDS-Agent.
Tried installing the agent package standalone to no avail. MicroXRCEAgent doesn't start the lidar etc services after the ./run.sh command.

Error message after ./install.sh mentioned below. Any leads on how to get the system to build and MicroXRCE activate will be appreciated.


-- Detecting CXX compile features - done
-- Setting build type to 'Release' as none was specified.
-- **Could NOT find tinyxml2 (missing: TINYXML2_LIBRARY TINYXML2_INCLUDE_DIR)**
-- Found OpenSSL: /usr/lib/arm-linux-gnueabihf/libcrypto.so (found version "1.1.1c")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/build
[ 95%] Performing build step for 'uagent'
Scanning dependencies of target microxrcedds_agent
[ 2%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/Agent.cpp.o
[ 5%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/Root.cpp.o
[ 7%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/processor/Processor.cpp.o
[ 10%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/client/ProxyClient.cpp.o
[ 12%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/participant/Participant.cpp.o
[ 15%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/topic/Topic.cpp.o
[ 17%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/publisher/Publisher.cpp.o
[ 20%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/subscriber/Subscriber.cpp.o
[ 23%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/datawriter/DataWriter.cpp.o
[ 25%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/datareader/DataReader.cpp.o
[ 28%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/object/XRCEObject.cpp.o
[ 30%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/types/XRCETypes.cpp.o
[ 33%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/types/MessageHeader.cpp.o
[ 35%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/types/SubMessageHeader.cpp.o
[ 38%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/message/InputMessage.cpp.o
[ 41%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/message/OutputMessage.cpp.o
[ 43%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/Server.cpp.o
[ 46%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/udp/UDPServerBase.cpp.o
[ 48%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/tcp/TCPServerBase.cpp.o
[ 51%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/serial/SerialServerBase.cpp.o
[ 53%] Building C object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/serial/serial_protocol.c.o
[ 56%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/udp/UDPServerLinux.cpp.o
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/udp/UDPServerLinux.cpp: In member function ‘virtual bool eprosima::uxr::UDPv4Agent::recv_message(eprosima::uxr::InputPacket&, int)’:
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/udp/UDPServerLinux.cpp:202:52: warning: cast from ‘sockaddr*’ to ‘sockaddr_in*’ increases required alignment of target type [-Wcast-align]
uint32_t addr = ((struct sockaddr_in*)&client_addr)->sin_addr.s_addr;
^~~~~~~~~~~
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/udp/UDPServerLinux.cpp:203:52: warning: cast from ‘sockaddr*’ to ‘sockaddr_in*’ increases required alignment of target type [-Wcast-align]
uint16_t port = ((struct sockaddr_in*)&client_addr)->sin_port;
^~~~~~~~~~~
[ 58%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/tcp/TCPServerLinux.cpp.o
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/tcp/TCPServerLinux.cpp: In member function ‘void eprosima::uxr::TCPv4Agent::listener_loop()’:
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/tcp/TCPServerLinux.cpp:478:76: warning: cast from ‘sockaddr*’ to ‘sockaddr_in*’ increases required alignment of target type [-Wcast-align]
open_connection(incoming_fd, (struct sockaddr_in*)&client_addr);
^~~~~~~~~~~
[ 61%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/serial/SerialServerLinux.cpp.o
[ 64%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/discovery/DiscoveryServerLinux.cpp.o
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/discovery/DiscoveryServerLinux.cpp: In member function ‘virtual bool eprosima::uxr::DiscoveryServerLinux::recv_message(eprosima::uxr::InputPacket&, int)’:
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/discovery/DiscoveryServerLinux.cpp:151:59: warning: cast from ‘sockaddr*’ to ‘sockaddr_in*’ increases required alignment of target type [-Wcast-align]
uint16_t remote_port = ((struct sockaddr_in*)&client_addr)->sin_port;
^~~~~~~~~~~
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/discovery/DiscoveryServerLinux.cpp:157:56: warning: cast from ‘sockaddr*’ to ‘sockaddr_in*’ increases required alignment of target type [-Wcast-align]
uint32_t addr = ((struct sockaddr_in*)&client_addr)->sin_addr.s_addr;
^~~~~~~~~~~
/home/pi/tb3_sbc_settings/Micro-XRCE-DDS-Agent/src/cpp/transport/discovery/DiscoveryServerLinux.cpp:158:56: warning: cast from ‘sockaddr*’ to ‘sockaddr_in*’ increases required alignment of target type [-Wcast-align]
uint16_t port = ((struct sockaddr_in*)&client_addr)->sin_port;
^~~~~~~~~~~
[ 66%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/p2p/AgentDiscovererLinux.cpp.o
[ 69%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/discovery/DiscoveryServer.cpp.o
[ 71%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/types/TopicPubSubType.cpp.o
[ 74%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/xmlobjects/xmlobjects.cpp.o
[ 76%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/middleware/fast/FastEntities.cpp.o
[ 79%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/middleware/fast/FastMiddleware.cpp.o
[ 82%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/middleware/ced/CedEntities.cpp.o
[ 84%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/middleware/ced/CedMiddleware.cpp.o
[ 87%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/transport/p2p/AgentDiscoverer.cpp.o
[ 89%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/p2p/InternalClientManager.cpp.o
[ 92%] Building CXX object CMakeFiles/microxrcedds_agent.dir/src/cpp/p2p/InternalClient.cpp.o
[ 94%] Linking CXX shared library libmicroxrcedds_agent.so
[ 94%] Built target microxrcedds_agent
Scanning dependencies of target MicroXRCEAgent
[ 97%] Building CXX object CMakeFiles/MicroXRCEAgent.dir/microxrce_agent.cpp.o
[100%] Linking CXX executable MicroXRCEAgent
/usr/bin/ld: libmicroxrcedds_agent.so.1.1.0: undefined reference to `__atomic_store_8'
/usr/bin/ld: libmicroxrcedds_agent.so.1.1.0: undefined reference to `__atomic_load_8'
collect2: error: ld returned 1 exit status
make[5]: *** [CMakeFiles/MicroXRCEAgent.dir/build.make:86: MicroXRCEAgent] Error 1
make[4]: *** [CMakeFiles/Makefile2:73: CMakeFiles/MicroXRCEAgent.dir/all] Error 2
make[3]: *** [Makefile:130: all] Error 2
make[2]: *** [CMakeFiles/uagent.dir/build.make:116: uagent-prefix/src/uagent-stamp/uagent-build] Error 2
make[1]: *** [CMakeFiles/Makefile2:262: CMakeFiles/uagent.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

**[Fail] Micro-XRCE-DDS-Agent Install Fail**

Asked by AshSax on 2019-08-05 13:19:26 UTC

Comments

As you can see from the link you mentioned, we use Ubuntu by default, not Raspbian. Perhaps you can easily install it by checking for the latest updates.

Asked by Pyo on 2019-09-10 17:06:45 UTC

Answers