Closed RaulFdzbis closed 3 years ago
$ pip list | grep numpy
numpy 1.15.4
$ sudo -H pip install --upgrade numpy
$ pip list | grep numpy
numpy 1.16.1
What is your Python Boost version?
Here you go:
~$ dpkg -s libboost-dev | grep 'Version'
Version: 1.65.1.0ubuntu1
Well, then it's definitely https://github.com/rdiankov/openrave/issues/551 :
Building with Boost.Python version 1.65.1 or greater is broken, as the
boost::python::numeric
namespace has been removed in favor ofboost::python::numpy
Options:
upstream
tag)Yeah it looks like it is. I always tend to choose the cry option, but i will keep you up if there is some news hahahaha.
Thank you @David-Estevez !!
Added priority: high
as Bionic is growing in users, and it's not easy to simply uninstall boost for downgrade (many packages depend on it).
I met the same issue and I chose to cry for my fate.
OpenRAVE has been recently upgraded (from 0.15.0 to 0.24.1). As usual: some issues might be fixed now, some bugs may arise. For now, I identified a missing rapidjson dependency (Travis build on Xenial). Reminds me of https://github.com/rdiankov/openrave/commit/7ad8ca4fe95ad1feb30e2a16bf9f19fc028b4f70.
OpenRAVE has been recently upgraded (from 0.15.0 to 0.24.1). As usual: some issues might be fixed now, some bugs may arise.
The rapidjson regression is tracked at https://github.com/rdiankov/openrave/issues/707. Installing rapidjson-dev
is not a complete fix since the rapidjson/pointer.h
header file cannot be found afterwards: ref. Besides, a C++11 issue spoils gcc Travis jobs: ref.
That travis says gcc 5.4.
gcc 6 (or later) defaults to C++14 and does not have emplace_back issue. Otherwise -DCMAKE_CXX_FLAGS=-std=gnu++11
needs to be passed as described in https://github.com/cielavenir/mujin_recruiting/blob/master/cookbooks/mujin/recipes/default.rb#L132 (that default.rb describes openrave installation in devops way)
For boost, you could work on https://github.com/rdiankov/openrave/pull/625 (note that I have not tested that one)
I was able to establish the procedure to compile openrave on bionic (and buster) https://github.com/cielavenir/mujin_recruiting/blob/master/cookbooks/buster/recipes/default.rb
Thanks! I managed to compile it on bionic, too, following https://github.com/crigroup/openrave-installation. It does seem to work on latest OpenRAVE master (although the scripts hosted in there still point at v0.9) at the cost of forcing me to download and compile an older Boost release (if I'm correct, your code uses apt
, which is nicer).
@PeterBowman instead of using older boost, my installation procedure uses openrave specific branch supporting latest boost.
Installing
rapidjson-dev
is not a complete fix since therapidjson/pointer.h
header file cannot be found afterwards: ref.
Probably fixed in Bionic since rapidjson v1.1.0 already includes the offending pointer.h header (ref at https://github.com/Tencent/rapidjson).
Besides, a C++11 issue spoils gcc Travis jobs: ref.
gcc 6 (or later) defaults to C++14 and does not have emplace_back issue.
See https://docs.travis-ci.com/user/languages/c/#gcc-on-linux for a guide on upgrading gcc in Travis. However, I'm hesitant about meddling with the build environment, probably more prone to change the CLI CMake options as mentioned in:
Otherwise
-DCMAKE_CXX_FLAGS=-std=gnu++11
needs to be passed (...)
Yeah! Being able to install it following https://github.com/crigroup/openrave-installation as stated by @PeterBowman. I did not try @cielavenir solution but looks good too.
Thank you guys!
If you agree, will keep this issue open until there is a solid solution or at least is updated in the installation guides :D
Update: After this
Yeah! Being able to install it following https://github.com/crigroup/openrave-installation ...
Getting this error while trying to run openrave:
2019-11-13 17:43:16,838 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /home/raul/repos/forceSensor/lib//libForceSensor.so: /home/raul/repos/forceSensor/lib//libForceSensor.so: undefined symbol: _ZNK8OpenRAVE13InterfaceBase20GetReadableInterfaceERKSs
2019-11-13 17:43:16,839 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /home/raul/repos/forceSensor/lib//libForceSensor.so: /home/raul/repos/forceSensor/lib//libForceSensor.so: undefined symbol: _ZNK8OpenRAVE13InterfaceBase20GetReadableInterfaceERKSs
2019-11-13 17:43:16,839 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /home/raul/repos/forceSensor/lib//libForceSensor.so: /home/raul/repos/forceSensor/lib//libForceSensor.so: undefined symbol: _ZNK8OpenRAVE13InterfaceBase20GetReadableInterfaceERKSs
2019-11-13 17:43:16,839 openrave [WARN] [plugindatabase.h:941 RaveDatabase::PluginPtr OpenRAVE::RaveDatabase::_LoadPlugin] failed to load: /home/raul/repos/forceSensor/lib//libForceSensor.so
2019-11-13 17:43:17,546 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so: libACE-6.0.3.so: cannot open shared object file: No such file or directory
2019-11-13 17:43:17,547 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so: libACE-6.0.3.so: cannot open shared object file: No such file or directory
2019-11-13 17:43:17,547 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so: libACE-6.0.3.so: cannot open shared object file: No such file or directory
2019-11-13 17:43:17,548 openrave [WARN] [plugindatabase.h:941 RaveDatabase::PluginPtr OpenRAVE::RaveDatabase::_LoadPlugin] failed to load: /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so
2019-11-13 17:43:18,778 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libqtosgrave.so: /usr/local/lib/openrave0.9-plugins/libqtosgrave.so: undefined symbol: _ZN3osg5Group11removeChildEPNS_4NodeE
Segmentation fault (core dumped)
Any idea?
Did you perform a fresh OpenRAVE installation? If not, perhaps some older symlinks are still pointing at the previous version. Check ls -l /usr/local/lib/libopenrave0.*
.
I'd also recompile and reinstall the plugins:
/home/raul/repos/openrave-yarp-plugins
, recompile and install)/home/raul/repos/forceSensor
, possibly found via the path defined by your OPENRAVE_PLUGINS
environment variable)Did clean install of three of the packages (openrave, openraveyarp-plugins and forcesensors), solved problem with forceSensor library but still receiving segmentation fault:
2019-11-14 12:22:13,966 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so: libACE-6.0.3.so: cannot open shared object file: No such file or directory
2019-11-14 12:22:13,967 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so: libACE-6.0.3.so: cannot open shared object file: No such file or directory
2019-11-14 12:22:13,968 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so: libACE-6.0.3.so: cannot open shared object file: No such file or directory
2019-11-14 12:22:13,968 openrave [WARN] [plugindatabase.h:941 RaveDatabase::PluginPtr OpenRAVE::RaveDatabase::_LoadPlugin] failed to load: /usr/local/lib/openrave0.9-plugins/libOpenraveYarpControlboard.so
2019-11-14 12:22:14,183 openrave [WARN] [plugindatabase.h:1014 RaveDatabase::_SysLoadLibrary] /usr/local/lib/openrave0.9-plugins/libqtosgrave.so: /usr/local/lib/openrave0.9-plugins/libqtosgrave.so: undefined symbol: _ZN3osg5Group11removeChildEPNS_4NodeE
Segmentation fault (core dumped)
Looks like the problem comes with /usr/local/lib/openrave0.9-plugins/ not being correctly installed?
Yes, please be sure to really completely wipe out old stuff and try again:
sudo rm -rf /usr/local/lib/openrave0.9-plugins
sudo rm -rf /home/raul/repos/openrave-yarp-plugins/build
cd /home/raul/repos/openrave-yarp-plugins
mkdir build; cd build; cmake ..
make
sudo make install
Yes, please be sure to really completely wipe out old stuff and try again:
sudo rm -rf /usr/local/lib/openrave0.9-plugins sudo rm -rf /home/raul/repos/openrave-yarp-plugins/build cd /home/raul/repos/openrave-yarp-plugins mkdir build; cd build; cmake .. make sudo make install
That solved the segmentation fault problem :D, however after that a new problem arised when running openraveYarpPaintSquares.py D:
Rave has been initialized
2019-11-14 13:43:21,903 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name fcl_, interface collisionchecker
2019-11-14 13:43:21,903 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name ode, interface collisionchecker
2019-11-14 13:43:21,903 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name bullet, interface collisionchecker
2019-11-14 13:43:21,903 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name pqp, interface collisionchecker
2019-11-14 13:43:21,909 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name qtcoin, interface viewer
2019-11-14 13:43:21,910 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name ivmodelloader, interface module
DATA_READ - Fatal error!
Unacceptable input file type.
2019-11-14 13:43:21,911 openrave [WARN] [xmlreaders-core.cpp:992 LinkXMLReader::endElement] failed to find /usr/local/share/teo-openrave-models/contexts/openrave/teo/models/RootWaist_links.wrl
2019-11-14 13:43:21,911 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name ivmodelloader, interface module
DATA_READ - Fatal error!
Unacceptable input file type.
2019-11-14 13:43:21,914 openrave [WARN] [xmlreaders-core.cpp:1001 LinkXMLReader::endElement] failed to find /usr/local/share/teo-openrave-models/contexts/openrave/teo/models/RootWaist_links.wrl
2019-11-14 13:43:21,915 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name ivmodelloader, interface module
...
(output cut to avoid flooding the issue, same error for each part of the model)
Running openrave brings the following output:
~$ openrave
2019-11-14 16:21:43,864 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name fcl_, interface collisionchecker
2019-11-14 16:21:43,864 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name ode, interface collisionchecker
2019-11-14 16:21:43,864 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name bullet, interface collisionchecker
2019-11-14 16:21:43,864 openrave [WARN] [plugindatabase.h:645 InterfaceBasePtr OpenRAVE::RaveDatabase::Create] Failed to create name pqp, interface collisionchecker
2019-11-14 16:21:43,864 openrave [WARN] [openrave.cpp:322 MainOpenRAVEThread] failed to find an OpenRAVE viewer.
Thanks to @jgvictores we have come to the conclusion that the load of the .wrl models can depend on the viewer used by Openrave, so the error may come from not having installed the viewer in Openrave. I will try to change https://github.com/crigroup/openrave-installation configuration to force the installation of the qtcoin viewer and see if this can fix the problem.
Just doing a fast reinstall (without even changing the configuration) solved the problem. Appart of that, I also had to delete some residual installation i had of openscenegraph, following this issue.
So as a conclusion due to version changes try to do a fresh and clean install of openrave when trying this solution. Now is working :+1:
For boost, you could work on rdiankov/openrave#625 (note that I have not tested that one)
Confirmed https://github.com/cielavenir/openrave/tree/boost-1.6x-forcompile as of https://github.com/cielavenir/openrave/tree/db596f12a61badf71cc97a73162cf78c5b9dd165 (similar to https://github.com/morxa/openrave/tree/boost-1.6x for https://github.com/rdiankov/openrave/pull/625 ?) is compiling and working (openrave v0.9.0
) on Bionic with the distro's Boost 1.65.
Offtopic (xenial
): Regarding master
at time of writing, which identifies itself as v0.25.0
, on a Xenial machine, I had to install https://github.com/Tencent/rapidjson from source (current master) because distro version missing rapidjson/pointer.h
AND added some set(CMAKE_CXX_STANDARD 11)
at root for environment.h
.
Conversation already linked from other side, but specific comment (for future reference) on even newer Ubuntu versions: https://github.com/rdiankov/openrave/issues/756#issuecomment-604591630
I'm trying to Migrate from boost::numeric
toboost:numpy
for Boost too. As this pull request's code is outdated. https://github.com/rdiankov/openrave/pull/625
In the current master branch https://github.com/rdiankov/openrave/commit/811cf2367a0ce8b6c92be26579ca161ab4bac0a8 I finished most cases by replace numeric::array
to numpy::ndarray
But I stuck at here https://github.com/rdiankov/openrave/blob/master/python/bindings/include/openravepy/boostpython/boostpython_bindings.h#L23-L25
any suggestion on how to change these lines?
Installing
rapidjson-dev
is not a complete fix since therapidjson/pointer.h
header file cannot be found afterwards: ref.Regarding
master
at time of writing, which identifies itself asv0.25.0
, on a Xenial machine, I had to install https://github.com/Tencent/rapidjson from source (current master) because distro version missingrapidjson/pointer.h
Documented at https://github.com/roboticslab-uc3m/installation-guides/commit/1e61468273a298dec65a2d095024e07cc40bbd29.
Installing Openrave [master] in Ubuntu 18.04 bionic gives this error:
Possible related issues: https://github.com/rdiankov/openrave/issues/542 and https://github.com/rdiankov/openrave/issues/551