I have asked this question in github but haven’t had any luck getting a response. I am trying to run the latest version and get a segmentation fault whether I run nuitrack, nuitrack_sample or nuitrack_device_api_sample . I have a Real Sense D435 and am running it using USB 3. It shows up fine when using the realsense-viewer. Below is a backtrace from /usr/bin/QtNuitrackLicense. Can anyone help me get this working. It’s been a while since I have been trying with no success. Thanks.
(gdb) bt
#0 _IO_fgets (buf=buf@entry=0x7fffd53b8250 "", n=n@entry=255, fp=fp@entry=0x0)
at iofgets.c:47
#1 0x00007fff6107b16b in fgets (__stream=0x0, __n=255, __s=0x7fffd53b8250 "")
at /usr/include/x86_64-linux-gnu/bits/stdio2.h:263
#2 list_video_devices(bool, bool) (rescan=false, silent=true)
at /home/voxel/5voxel/code/0529/3DCameraAPI/3DCameraAPI/plat/linux/../../../3DCameraAPI/src/3DCameraAPI/v4l2_wrapper.cpp:1544
#3 0x00007fff6107c29d in get_device_id_from_pid_vid(char const*, char const*)
(pid=pid@entry=0x7fff6213a705 <productList+5> "182d", vid=vid@entry=0x7fff6213a700 <productList> "0b05")
at /home/voxel/5voxel/code/0529/3DCameraAPI/3DCameraAPI/plat/linux/../../../3DCameraAPI/src/3DCameraAPI/v4l2_wrapper.cpp:1590
#4 0x00007fff610684f4 in deviceSensorAPI::scanVideoCamera(CameraDevInfo*)
(this=0x7fffc80bd390, cameraDevInfo=0x7fffc80a6d20)
at /home/voxel/5voxel/code/0529/3DCameraAPI/3DCameraAPI/plat/linux/../../../3DCameraAPI/src/3DCameraAPI/3DCameraAPI.cpp:2445
#5 0x00007fff61059ea6 in SenDuckDriver::initialize(void (*)(OniDeviceInfo const*, void*), void (*)(OniDeviceInfo const*, void*), void (*)(OniDeviceInfo const*, int, void*), void*) ()
at /usr/local/lib/nuitrack/OpenNI2/Drivers/libSenDuck.so
#6 0x00007fffe9380f30 in oni::implementation::DeviceDriver::initialize() ()
at /usr/local/lib/nuitrack/libOpenNI2.so
#7 0x00007fffe9378f17 in oni::implementation::Context::loadLibraries() ()
--Type <RET> for more, q to quit, c to continue without paging--
sr/local/lib/nuitrack/libOpenNI2.so
#8 0x00007fffe937add6 in oni::implementation::Context::initialize() () at /usr/local/lib/nuitrack/libOpenNI2.so
#9 0x00007fffda1025c1 in () at /usr/etc/nuitrack/middleware/libNuitrackModule.so
#10 0x00007fffda0eb6fc in () at /usr/etc/nuitrack/middleware/libNuitrackModule.so
#11 0x00007ffff5e4a21d in tdv::nuitrack::middleware::Core::getDeviceList() () at /usr/local/lib/nuitrack/libmiddleware.so
#12 0x00007ffff7a953c6 in tdv::nuitrack::Nuitrack::getDeviceList() () at /usr/local/lib/nuitrack/libnuitrack.so
#13 0x00007ffff7ab80c2 in nuitrack_GetDeviceList () at /usr/local/lib/nuitrack/libnuitrack.so
#14 0x000000000040ffbc in tdv::nuitrack::Nuitrack::getDeviceList() ()
#15 0x000000000040dc77 in QtConcurrent::StoredFunctorCall0<std::vector<std::shared_ptr<tdv::nuitrack::device::NuitrackDevice>, std::allocator<std::shared_ptr<tdv::nuitrack::device::NuitrackDevice> > >, std::vector<std::shared_ptr<tdv::nuitrack::device::NuitrackDevice>, std::allocator<std::shared_ptr<tdv::nuitrack::device::NuitrackDevice> > > (*)()>::runFunctor() ()
#16 0x000000000041165b in QtConcurrent::RunFunctionTask<std::vector<std::shared_ptr<tdv::nuitrack::device::NuitrackDevice>, std::allocator<std::shared_ptr<tdv::nuitrack::device::NuitrackDevice> > > >::run() ()
#17 0x00007ffff688ff82 in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00007ffff688c9d2 in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00007ffff63c3609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#20 0x00007ffff64ff293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Sorry for the issues you’ve encountered!
What architecture do you use (arm/x64)?
Could you please run nuitrack_sample in cmd and send us the output (without gdb).
Unfortunately, we cannot tell what is causing the problem at the moment. We ran nuitrack latest version on ubuntu 20.04/x64 using RealSense D435 and didn’t get this problem.
Officially, Nuitrack does not support Ubuntu 20.04.
You could try running nuitrack on ubuntu 18.04 or try switching realsense to another sensor, if possible.
We’ll begin testing Ubuntu 20.04 in the near future and notify our customers as soon as we add support for this platform.
We are really sorry for the inconvenience.
Thanks again Mariya. I’m surprised your company hasn’t started supporting Ubuntu 20.04 yet as it’s over a year since it’s release and is an LTS release. No I’m not running nuitrack in a container. I’ll continue trying to figure out whats going on and let you know if I do.
One thing I have noticed is the shell script to run nuitrack includes QT_QPA_FONTDIR=$NUITRACK_HOME/qt/lib/fonts/
This fonts directory is missing from the package nuitrack-ubuntu-amd64.deb . It does exist in the ARM package so I took it from there and installed it at $NUITRACK_HOME/qt/lib/fonts/ . I am still getting the same segmentation fault but perhaps this is an issue?