ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

BtbN's profile - activity

2013-05-28 00:41:42 -0500 commented answer SIGILL, Illegal instruction in libpcl_common.so.1.5.1 from costmap_2d

It's in the debian/fuerte/precise/pcl branch.

2013-05-16 22:57:32 -0500 received badge  Scholar (source)
2013-05-16 22:57:32 -0500 received badge  Enlightened (source)
2013-05-14 13:01:49 -0500 received badge  Nice Question (source)
2013-05-14 13:01:45 -0500 received badge  Good Answer (source)
2013-05-14 00:31:49 -0500 received badge  Nice Answer (source)
2013-05-14 00:23:03 -0500 received badge  Student (source)
2013-05-12 13:56:10 -0500 received badge  Teacher (source)
2013-05-12 13:56:10 -0500 received badge  Self-Learner (source)
2013-05-12 13:55:56 -0500 received badge  Famous Question (source)
2013-05-10 12:43:25 -0500 answered a question SIGILL, Illegal instruction in libpcl_common.so.1.5.1 from costmap_2d

I managed to hack-fix this for now. All i did was just rebuilding pcl from ros-gbp/pcl-fuerte-release.git on github(debian/fuerte/precise/pcl branch) on the machine it's running on and then simply replacing the libpcl files in /opt/ros/fuerte/lib with the ones i built.

Not a clean fix as it interfers with the package manager, but it works for now and i hope that the next update fixes it.

It looks like cmake checks for the SSE and other cpu capabilitys when it's configuring. So if the buildservers are capable of avx and other extensions, that'd explain how the instructions got in there.

2013-05-10 09:53:25 -0500 received badge  Notable Question (source)
2013-05-10 09:53:25 -0500 received badge  Popular Question (source)
2013-05-10 01:43:35 -0500 asked a question SIGILL, Illegal instruction in libpcl_common.so.1.5.1 from costmap_2d

Since our latest ros fuerte update in ubuntu precise, our navigation crashes. After investigating the issue, we found out that the problem is the costmap_2d node, which crahses with SIGILL, which mean that an illegal assembler instruction was called. We furhter investigated this, and found out, that it's a AVX instruction call in Eigen, called from libpcl in libpcl_common.so.1.5.1 Our ros is running on an intel atom, which does not support avx, so we can't use it anymore.

We tried to build our own version without avx, but failed to find out how to build our own deb to replace the existing one. The avx instructions shouldn't be in there at all, as many CPUs don't support it. The problems started with the ros update on 2nd May.