Please suggest a work around for the pc hangup when run the command
make px4_sitl gazebo
-- computer freezes when doing this -- I have to press the power button to restart.
I am trying to simulate a plane in gazebo and work with the mavsdk libraries.
If this issue is still new, then I do have a pixhawk with which I can start HITL directly. But would need the steps to run mavsdk c++ file to run a mission on QGC and Xplane10.
Would be grateful to whoever is able to help me here.!
Thanks,
Prasheel
Update:
So, I had been SMH for quite a few days on this, and finally got it to work!
I commented every dependency in the CMakeLists of sitl_gazebo. Somehow with all at once, the plugins do not work. I worked them out one by one.
But, there are some serious issues in usv_dynamics plugin as thats the last part in the commented part with which the issue still exists!. Also, had to first build on px4_sitl_default gazebo then worked it out on gazebo_plane. This finally got the model running with mission commands from QGC.
But, did give these errors-
In file included from /usr/include/eigen3/Eigen/Core:316:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:60:39: warning: ignoring attributes on template argument ‘__m128 {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct is_arithmetic<__m128> { enum { value = true }; };
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:61:40: warning: ignoring attributes on template argument ‘__m128i {aka __vector(2) long long int}’ [-Wignored-attributes]
template<> struct is_arithmetic<__m128i> { enum { value = true }; };
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:62:40: warning: ignoring attributes on template argument ‘__m128d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct is_arithmetic<__m128d> { enum { value = true }; };
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:160:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct unpacket_traits<Packet4f> { typedef float type; enum {size=4, alignment=Aligned16}; typedef Packet4f half; };
^
In file included from /usr/include/eigen3/Eigen/Core:316:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:161:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct unpacket_traits<Packet2d> { typedef double type; enum {size=2, alignment=Aligned16}; typedef Packet2d half; };
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:162:43: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i {aka __vector(2) long long int}’ [-Wignored-attributes]
template<> struct unpacket_traits<Packet4i> { typedef int type; enum {size=4, alignment=Aligned16}; typedef Packet4i half; };
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:468:37: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
struct protate_impl<offset, Packet4f>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:476:37: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i {aka __vector(2) long long int}’ [-Wignored-attributes]
struct protate_impl<offset, Packet4i>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:484:37: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
struct protate_impl<offset, Packet2d>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:755:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
struct palign_impl<Offset,Packet4f>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:778:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i {aka __vector(2) long long int}’ [-Wignored-attributes]
struct palign_impl<Offset,Packet4i>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:801:35: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
struct palign_impl<Offset,Packet2d>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:815:34: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
ptranspose(PacketBlock<Packet4f,4>& kernel) {
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:820:34: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
ptranspose(PacketBlock<Packet2d,2>& kernel) {
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:827:34: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4i {aka __vector(2) long long int}’ [-Wignored-attributes]
ptranspose(PacketBlock<Packet4i,4>& kernel) {
^
In file included from /usr/include/eigen3/Eigen/Core:318:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h:232:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct conj_helper<Packet4f, Packet2cf, false,false>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h:241:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet4f {aka __vector(4) float}’ [-Wignored-attributes]
template<> struct conj_helper<Packet2cf, Packet4f, false,false>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h:433:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct conj_helper<Packet2d, Packet1cd, false,false>
^
/usr/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h:442:63: warning: ignoring attributes on template argument ‘Eigen::internal::Packet2d {aka __vector(2) double}’ [-Wignored-attributes]
template<> struct conj_helper<Packet1cd, Packet2d, false,false>
^
In file included from /usr/include/eigen3/Eigen/Core:298:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h: In instantiation of ‘struct Eigen::internal::find_best_packet<float, 4>’:
/usr/include/eigen3/Eigen/src/Core/Matrix.h:144:57: required from ‘struct Eigen::internal::traits<Eigen::Matrix<float, 4, 1> >’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:219:7: required from ‘struct Eigen::internal::traits<Eigen::Quaternion<float> >’
/usr/include/eigen3/Eigen/src/Geometry/RotationBase.h:34:56: required from ‘class Eigen::RotationBase<Eigen::Quaternion<float>, 3>’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:35:7: required from ‘class Eigen::QuaternionBase<Eigen::Quaternion<float> >’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:227:7: required from ‘class Eigen::Quaternion<float>’
/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:22:3: required from here
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:44: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<float>::type {aka __vector(4) float}’ [-Wignored-attributes]
bool Stop = Size==Dynamic || (Size%unpacket_traits<PacketType>::size)==0 || is_same<PacketType,typename unpacket_traits<PacketType>::half>::value>
~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:83: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<float>::type {aka __vector(4) float}’ [-Wignored-attributes]
bool Stop = Size==Dynamic || (Size%unpacket_traits<PacketType>::size)==0 || is_same<PacketType,typename unpacket_traits<PacketType>::half>::value>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:83: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<float>::type {aka __vector(4) float}’ [-Wignored-attributes]
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:83: warning: ignoring attributes on template argument ‘Eigen::internal::unpacket_traits<__vector(4) float>::half {aka __vector(4) float}’ [-Wignored-attributes]
In file included from /usr/include/eigen3/Eigen/Core:298:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:148:88: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<float>::type {aka __vector(4) float}’ [-Wignored-attributes]
typedef typename find_best_packet_helper<Size,typename packet_traits<T>::type>::type type;
^~~~
In file included from /usr/include/eigen3/Eigen/Core:343:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 0>’:
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:288:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 1>’
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:527:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 3>’
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:457:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<float, 4, 1>, float, float, Eigen::DenseCoeffsBase<Eigen::Matrix<float, 4, 1>, 3>, false>’
/usr/include/eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<float, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<float, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:91:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<float, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/Matrix.h:178:7: required from ‘class Eigen::Matrix<float, 4, 1>’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:287:16: required from ‘class Eigen::Quaternion<float>’
/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:22:3: required from here
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:55:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<float>::type {aka __vector(4) float}’ [-Wignored-attributes]
>::type PacketReturnType;
^~~~~~~~~~~~~~~~
In file included from /usr/include/eigen3/Eigen/Core:298:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h: In instantiation of ‘struct Eigen::internal::find_best_packet<double, 4>’:
/usr/include/eigen3/Eigen/src/Core/Matrix.h:144:57: required from ‘struct Eigen::internal::traits<Eigen::Matrix<double, 4, 1> >’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:219:7: required from ‘struct Eigen::internal::traits<Eigen::Quaternion<double> >’
/usr/include/eigen3/Eigen/src/Geometry/RotationBase.h:34:56: required from ‘class Eigen::RotationBase<Eigen::Quaternion<double>, 3>’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:35:7: required from ‘class Eigen::QuaternionBase<Eigen::Quaternion<double> >’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:227:7: required from ‘class Eigen::Quaternion<double>’
/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:75:3: required from here
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:44: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<double>::type {aka __vector(2) double}’ [-Wignored-attributes]
bool Stop = Size==Dynamic || (Size%unpacket_traits<PacketType>::size)==0 || is_same<PacketType,typename unpacket_traits<PacketType>::half>::value>
~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:83: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<double>::type {aka __vector(2) double}’ [-Wignored-attributes]
bool Stop = Size==Dynamic || (Size%unpacket_traits<PacketType>::size)==0 || is_same<PacketType,typename unpacket_traits<PacketType>::half>::value>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:83: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<double>::type {aka __vector(2) double}’ [-Wignored-attributes]
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:130:83: warning: ignoring attributes on template argument ‘Eigen::internal::unpacket_traits<__vector(2) double>::half {aka __vector(2) double}’ [-Wignored-attributes]
In file included from /usr/include/eigen3/Eigen/Core:298:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:148:88: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<double>::type {aka __vector(2) double}’ [-Wignored-attributes]
typedef typename find_best_packet_helper<Size,typename packet_traits<T>::type>::type type;
^~~~
In file included from /usr/include/eigen3/Eigen/Core:343:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/common.h:26,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/include/gazebo_opticalflow_mockup_plugin.h:37,
from /home/prasheel/Workspace/RA/Dependencies/Firmware/Tools/sitl_gazebo/src/gazebo_opticalflow_mockup_plugin.cpp:27:
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h: In instantiation of ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 0>’:
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:288:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 1>’
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:527:7: required from ‘class Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 3>’
/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h:457:8: required from ‘struct Eigen::internal::special_scalar_op_base<Eigen::Matrix<double, 4, 1>, double, double, Eigen::DenseCoeffsBase<Eigen::Matrix<double, 4, 1>, 3>, false>’
/usr/include/eigen3/Eigen/src/Core/DenseBase.h:41:34: required from ‘class Eigen::DenseBase<Eigen::Matrix<double, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/MatrixBase.h:48:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:91:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/Matrix.h:178:7: required from ‘class Eigen::Matrix<double, 4, 1>’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:287:16: required from ‘class Eigen::Quaternion<double>’
/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:75:3: required from here
/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:55:30: warning: ignoring attributes on template argument ‘Eigen::internal::packet_traits<double>::type {aka __vector(2) double}’ [-Wignored-attributes]
>::type PacketReturnType;
^~~~~~~~~~~~~~~~
cc1plus: warning: unrecognized command line option ‘-Wno-address-of-packed-member’
I believe there are some issues with the build as it does not let me take all these plugins at once. I specially upgraded to gazebo9 for this (compromised my work on turtlebot - doesnt work on g9). The memory taken up at runtime is huge that causes the machine to freeze? I would be happy to work it out with you guys! But for now the issue is resolved (except the error log from eigen, which disappears on successive runs). I hope there are no dependencies on the usv_dynamics plugin.
Please do let me know how I can be of any help guys!.
Thanks,
Prasheel
-- computer freezes when doing this -- I have to press the power button to restart.
I guess it's your computer running out of RAM during linking.
cc1plus: warning: unrecognized command line option ‘-Wno-address-of-packed-member
This is a warning, so you should be able to get around it by disabling -Werror.
I am using an 8GB RAM with >50GB free space on my hard drive. I have an NVIDIA GPU.
I would be happy to know the requirements to run the firmware?
RAM usage depends on your CPU threads (compiler jobs), usually need 2GB per job.
Well, I wonder how this same firmware works well on a Pixhawk2 (currently using for HITL).
Please mind my knowledge in the field, kind of a rookie in flying drones but I'm good with C++!
Anyway, great to know about this. Would definitely take a look at the source code.
Thank you for the insight.
With #14971 you can now build with fewer cores in order to avoid running out of RAM:
make px4_sitl gazebo -2