Segmentation fault


#1

Hello,

I reinstalled Nuitrack SDK because I had some issues related to low fps and I wanted to make sure that the SDK was working fine.
However, when I reinstalled Nuitrack, I had some problems when I did catkin_make to my package: an OpenCV exception, but I managed to fix this by adding again the path “/usr/local/lib/nuitrack” to $LD_LIBRARY_PATH and purging nuitrack and openni.
Now catkin_make builds “successfully” my package, but when I try to run my node, a Segmentation Fault happens, which is a very generic error, but I think that this is related to Nuitrack because before I reinstalled Nuitrack, it ran successfully.
I executed gcc -g to my .cpp file (node) to see when the segmentation error occurs, but it does not find “ros/ros.h” or any other header and this is very strange, because I think that the CMakeLists.txt is fine.
Do you know any way to solve this?
Note: The package which contains the node that does not run is almost identical to this one: https://github.com/shinselrobots/nuitrack_body_tracker

Thank you.
Regards,
Fran.


#2

By the way, I am using a Rosbot 2.0 (Ubuntu 16.04, ROS Kinetic), which processor is ARM 32 bits.


#3

Hi Fran,

Please run your app with a debugger (for example, gdb) and provide us with a stack.


#4

Hello Olga,

I attach the gdb output of my program.

Also, before trying gdb, I flashed again the micro-SD card to see if reinstalling ubuntu again could solve the problem, but that’s not the case. Moreover, I cleaned and built other ROS packages which contains the same problem and the result is the same: Segmentation Fault.

Thank you.
Regards,
Fran.


#5

By the way,

As I installed again Ubuntu and ROS, I also installed again Nuitrack and I observed this:

“chown: missing operand after /usr/etc/nuitrack/data”

Do you think it’s related to the problem?


#6
  1. Please type in bt after (gdb) to get the backtrace and provide us with the text output.
  2. This error is displayed because of empty login name. Please run the command:
sudo chown (login name) (path to the folder)
  1. Please check out standard samples. Do they work?

#7

Hello Olga,

  1. This is the output of running bt (after gdb and r):

    #0 0xb6d04bae in ?? () from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
    #1 0xb6b5bcbc in ?? ()
    from /home/husarion/sdk/NuitrackSDK/Nuitrack/lib/linux_arm/libmiddleware.so
    #2 0xb6b59e30 in ?? ()
    from /home/husarion/sdk/NuitrackSDK/Nuitrack/lib/linux_arm/libmiddleware.so
    #3 0xb6b59f10 in boost::detail::set_tss_data(void const*, boost::shared_ptr<boost::detail::tss_cleanup_function>, void*, bool) ()
    from /home/husarion/sdk/NuitrackSDK/Nuitrack/lib/linux_arm/libmiddleware.so
    #4 0xb6ef85fe in ros::CallbackQueue::setupTLS() ()
    from /opt/ros/kinetic/lib/libroscpp.so
    #5 0xb6ef9cee in ros::CallbackQueue::callAvailable(ros::WallDuration) ()
    from /opt/ros/kinetic/lib/libroscpp.so
    #6 0xb6f2591a in ros::internalCallbackQueueThreadFunc() ()
    from /opt/ros/kinetic/lib/libroscpp.so
    #7 0xb6b593ec in ?? ()
    from /home/husarion/sdk/NuitrackSDK/Nuitrack/lib/linux_arm/libmiddleware.so
    #8 0xb6af95b4 in start_thread (arg=0x0) at pthread_create.c:335
    #9 0xb6c04c4c in ?? () at …/sysdeps/unix/sysv/linux/arm/clone.S:89
    from /lib/arm-linux-gnueabihf/libc.so.6
    Backtrace stopped: previous frame identical to this frame (corrupt stack?)
    (gdb)

  2. Which logname should I use? Because I don’t have any logname. I tried using my user name and it seems it worked well. I used ls -l to check if it worked:

    -rw-r–r-- 1 husarion root 15481 May 13 15:10 FABRIKSkeleton.xml
    drwxr-xr-x 2 husarion root 4096 Jun 26 14:54 handtracker
    -rw-r–r-- 1 husarion root 2563 May 13 15:10 kinematic_filter.xml
    -rw-r–r-- 1 husarion root 8118 May 13 15:10 nuitrack.config
    -rw-r–r-- 1 husarion root 608 May 13 15:10 nuitrack_local.config
    drwxr-xr-x 2 husarion root 4096 Jun 26 14:54 poseoptimization
    drwxr-xr-x 2 husarion root 4096 Jun 26 14:54 regStat
    -rw-r–r-- 1 husarion root 8460 May 13 15:10 skeleton.xml
    -rw-r–r-- 1 husarion root 850 May 13 15:10 skeleton_limits.xml

By the way, I saw other posts in Nuitrack community and I checked for a folder that I think it’s related to the logname, which name starts with “e24” and I don’t have it (maybe I deleted it by mistake when I uninstalled Nuitrack for the first time, I don’t know…).

  1. I tried standard samples and they work, but after a moment of working, the image display freezes and it says “Please get a license”.

Note: I also tried running ld in my program and the output is Segmentation Fault.

Thank you.
Regards,
Fran.


#8

It seems that the issue is connected to the license activation. Without any license, Nuitrack works for 2-3 seconds. We would recommend you to check Nuitrack by activating Trial License first. You can generate it in your personal account. Please follow the instructions below:


#9

Hello Olga,

I followed your instructions (the option Nuitrack Trial), but nuitrack_license_tool fails in the last step. The compatibility test succeeds, but when I introduce the license and click activate, the following error occurs:

Network Error (299): Error downloading https://download.3divi.com/nuitrack/activate/ - server replied: Bad RequestFailed: License signature is incorrect. Invalid signature.

Note: I have tried generating several keys and none of them works.

Thank you.
Regards,
Fran.


#10

Please send me the e24b... file from /usr/etc/nuitrack/data in a private message or to support.nuitrack@3divi.com


#11

Hello Olga,

I have just sent you the content of e24b… file in a private message.

Thank you.
Regards,
Fran.


#12

Hi,

I am having a similar issue, also getting a segmentation fault in the same fashion as you. Have you managed to solve this problem?


#13

We will fix this issue in the next Nuitrack release. Sorry for the inconvenience!