QApplication, threading, viewerrecorder issue on x86_64 Linux

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

QApplication, threading, viewerrecorder issue on x86_64 Linux

Dungeoneer
Similar to this
http://openrave-users-list.185357.n3.nabble.com/openrave-crashes-on-Mac-10-7-2-td3757527.html
issue on Mac OS,

I get on x86_64 Linux

$> export PYTHONPATH=$PYTHONPATH:`openrave-config --python-dir`
$> openrave.py --example hanoi
WARNING: QApplication was not created in the main() thread.
[plugindatabase.h:577] Failed to create name viewerrecorder, interface module
Segmentation fault
$> echo $?
139

with
Debian EGLIBC 2.17-93
Python 2.7.5+
gcc (Debian 4.8.1-10) 4.8.1
boost 1.54

for
OpenRAVE Version 0.9.0, pls find detatailed cmake log below.



cmake log was

-- Compiling OpenRAVE Version 0.9.0, soversion=0.9
-- Using cmake version 2.8.11
-- Using double precision
-- detected system processor: x86_64
-- installing to /usr/local, python exe /usr/bin/python, python subdir is lib/python2.7/dist-packages, program suffix is '0.9'
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   regex
--   filesystem
--   system
--   python
--   thread
--   iostreams
--   date_time
-- found boost version: 105400
-- Targetting Unix Makefiles
-- Using /usr/bin/c++ compiler.
-- Could NOT find MPFI
-- Using local crlibm
-- compiling with double extended (long double) floating point
-- assimp version 3.0.1, , /usr/local/include
-- WARNING: you are using the obsolete 'PKGCONFIG' macro, use FindPkgConfig
-- libxml2 found
CMake Warning at CMakeLists.txt:561 (find_package):
  Could not find a package configuration file provided by "COLLADA_DOM"
  (requested version 2.3) with any of the following names:

    COLLADA_DOMConfig.cmake
    collada_dom-config.cmake

  Add the installation prefix of "COLLADA_DOM" to CMAKE_PREFIX_PATH or set
  "COLLADA_DOM_DIR" to a directory containing one of the above files.  If
  "COLLADA_DOM" provides a separate development package or SDK, be sure it
  has been installed.


-- checking for module 'minizip'
--   package 'minizip' not found
-- Compiling with COLLADA support from sources!
-- compiling local qhull library
-- compiling local ann library
CMake Warning at CMakeLists.txt:688 (find_package):
  By not providing "FindFPARSER.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "FPARSER", but
  CMake did not find one.

  Could not find a package configuration file provided by "FPARSER"
  (requested version 4.4.3) with any of the following names:

    FPARSERConfig.cmake
    fparser-config.cmake

  Add the installation prefix of "FPARSER" to CMAKE_PREFIX_PATH or set
  "FPARSER_DIR" to a directory containing one of the above files.  If
  "FPARSER" provides a separate development package or SDK, be sure it has
  been installed.


-- compiling local fparser library
-- compiling local convexdecomposition library
-- Geometry Parsing: Collada DOM
-- Geometry Parsing: Using Open Asset Import Library 3.0.1
-- Geometry Parsing: Using ivcon
-- extracting models to /opt/openrave/src
-- MATLAB installation not found, is mex in the system path?
-- Octave installation not found, is 'mkoctfile' in the system path?
-- Found sympy version '0.7.2'
-- Assuming sympy version 0.7.x or greater
-- python and boost-python found
-- unsupported bullet version 2.81
-- enabling FFMPEG support
-- checking for module 'libswscale'
--   package 'libswscale' not found
-- ODE not compiled with multi-threaded extensions
-- ODE found, building oderave plugin, precision=SINGLE
-- Detected SoQt/Coin3D GUI, making plugin
CMake Warning (dev) at /usr/share/cmake-2.8/Modules/FindOpenSceneGraph.cmake:160 (find_package):
  File /usr/share/cmake-2.8/Modules/FindOpenSceneGraph.cmake includes
  /opt/openrave/modules-cmake/FindosgQt.cmake (found via CMAKE_MODULE_PATH)
  which shadows /usr/share/cmake-2.8/Modules/FindosgQt.cmake.  This may cause
  errors later on .

  Policy CMP0017 is not set: Prefer files from the CMake module directory
  when including from there.  Run "cmake --help-policy CMP0017" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.
Call Stack (most recent call first):
  plugins/qtosgrave/CMakeLists.txt:14 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Detected Qt/OSG GUI, making plugin
-- QT dirs: /usr/include/qt4 OPENGL: /usr/include/qt4/QtOpenGL
-- Link libraries: /usr/lib/x86_64-linux-gnu/libQtGui.so;/usr/lib/x86_64-linux-gnu/libQtCore.so;/usr/lib/x86_64-linux-gnu/libxml2.so;/usr/local/lib64/libosgDB.so.3.0.1;/usr/local/lib64/libosgQt.so.3.0.1;/usr/local/lib64/libosgGA.so.3.0.1;/usr/local/lib64/libosgText.so.3.0.1;/usr/local/lib64/libosgViewer.so.3.0.1;/usr/local/lib64/libosgManipulator.so.3.0.1;/usr/local/lib64/libosgShadow.so.3.0.1;/usr/local/lib64/libosg.so.3.0.1;/usr/local/lib64/libOpenThreads.so.12;/usr/lib/x86_64-linux-gnu/libQtOpenGL.so;/usr/lib/x86_64-linux-gnu/libGLU.so;/usr/lib/x86_64-linux-gnu/libGL.so;/usr/lib/x86_64-linux-gnu/libSM.so;/usr/lib/x86_64-linux-gnu/libICE.so;/usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- boost regex found
-- Configuring done
-- Generating done
-- Build files have been written to: /opt/openrave/build

if (fMSWinPlatform) { (void) askUserTwice(); throw BlueScreen; } else { doWork(); }
Reply | Threaded
Open this post in threaded view
|

Re: QApplication, threading, viewerrecorder issue on x86_64 Linux

Dungeoneer
Some change of state:

Because OSG DAE still seems to depend on Collada DOM 2.2
http://trac.openscenegraph.org/projects/osg//wiki/Support/KnowledgeBase/Collada
I had just that very version installed, so I tried to add Collada DOM 2.4 AFTER I already had OSG incl. its DAE plugin compiled and installed.

And indeed, the error changes.(OpenRAVE completely rebuilt)

$> openrave.py --example hanoi
WARNING: QApplication was not created in the main() thread.
[plugindatabase.h:577] Failed to create name viewerrecorder, interface module
[colladareader.cpp:3218] COLLADA error: Error creating tmp dir in daeZAEUncompressHandler::obtainRootFilePath
I/O error : Is a directory
[colladareader.cpp:3218] COLLADA error: Extra content at the end of the document
[colladareader.cpp:3218] COLLADA error: Failed to load file:/usr/local/share/openrave-0.9/robots/pumaarm.zae
[colladareader.cpp:3218] COLLADA error: Error creating tmp dir in daeZAEUncompressHandler::obtainRootFilePath
I/O error : Is a directory
[colladareader.cpp:3218] COLLADA error: Extra content at the end of the document
[colladareader.cpp:3218] COLLADA error: Failed to load file:/usr/local/share/openrave-0.9/robots/pumagripper.zae
[xmlreaders-core.cpp:2449] Failed to find manipulator end effector Puma6
[xmlreaders-core.cpp:2456] Failed to find manipulator base Base
[robotmanipulator.cpp:1002] manipulator arm has undefined base and end effector links Base, Puma6
[robotmanipulator.cpp:1051] could not find gripper joint m1 for manipulator arm
[environment-core.h:431] load failed on file /usr/local/share/openrave-0.9/data/hanoi_complex.env.xml
[environment-core.h:431] load failed on file data/hanoi_complex2.env.xml
Traceback (most recent call last):
  File "/usr/local/bin/openrave.py", line 149, in <module>
    example.run(args=args)
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/openravepy_ext.py", line 64, in newfn
    return fn(*args,**kwargs)
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/examples/hanoi.py", line 235, in run
    OpenRAVEGlobalArguments.parseAndCreateThreadedUser(options,main,defaultviewer=True)
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/misc.py", line 237, in parseAndCreateThreadedUser
    SetViewerUserThread(env,viewername,lambda: userfn(env,options))
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/misc.py", line 99, in SetViewerUserThread
    userfn()
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/misc.py", line 237, in <lambda>
    SetViewerUserThread(env,viewername,lambda: userfn(env,options))
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/examples/hanoi.py", line 214, in main
    hanoi = HanoiPuzzle(env,env.GetRobots()[0],plannername=options.planner)
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/examples/hanoi.py", line 44, in __init__
    self.ikmodel = databases.inversekinematics.InverseKinematicsModel(robot=robot,iktype=IkParameterization.Type.Transform6D)
  File "/usr/local/lib/python2.7/dist-packages/openravepy/_openravepy_0_9/databases/inversekinematics.py", line 214, in __init__
    for link in robot.GetChain(manip.GetBase().GetIndex(),manip.GetEndEffector().GetIndex(),returnjoints=False)[1:]:
AttributeError: 'NoneType' object has no attribute 'GetIndex'


Of couse I checked that the zae files are intact, readable; even that the included DAE is valid COLLADA 1.5.0 (by OpenCOLLADAValidator).

Access rights are, contrary to what one may guess from the error trace, not the issue here; except that "root" is forbidden to open an X-Window on my system, thus qtcoin also complains if root tries to run hanoi, the other errors are the same when I run that as root.

Sorry for saying this, but I start wondering whether one can risk relying on OpenRAVE for larger projects; even if this issue will be fixed for the present development infrastructure, what tells me that later installation attempts on a target system will not fail for this or other dependency issues which jumps at me seemingly out of nothingness?
if (fMSWinPlatform) { (void) askUserTwice(); throw BlueScreen; } else { doWork(); }