Svox running error
Closed this issue · 7 comments
Hi all,
Svox stopped working. Running the testing option written in the svox manual:
$ yarpdev --device speech --lingware-context speech --default-language en-US --pitch 100 --speed 100
produces the following linking error:
error while opening /usr/local/src/robot/iCubContrib/ICUBcontrib_pc104new/lib/speech/svox_speech.so:
libYARP_name.so.1: cannot open shared object file: No such file or directory
Cannot load plugin from shared library (svox_speech)
(svox_speech: cannot open shared object file: No such file or directory)
yarpdev: ***ERROR*** could not find device <speech>
[ERROR]yarpdev: ***ERROR*** device not available.
[INFO]Suggestions:
[INFO]+ Do "yarpdev --list" to see list of supported devices.
[INFO]+ Or append "--verbose" option to get more information.
EDIT: CMakeList.txt changed and compiled properly. - Still, the abovementioned problem persists.
While trying to compile svox itself, I've noticed that in the CMakeList.txt the yarp_prepare_device
is deprecated, and suggested to be changed to yarp_prepare_plugin
; I changed this:
yarp_prepare_device(${PROJECT_NAME}
TYPE yarp::dev::Speech
INCLUDE speech.h)
to this:
yarp_prepare_plugin(${PROJECT_NAME}
TYPE yarp::dev::Speech
INCLUDE speech.h)
Unfortunately, it doesn't like it:
CMake Error at /usr/local/src/robot/yarp/cmake/YarpPlugin.cmake:229 (message):
Not enough information to create speech
type: yarp::dev::Speech
include: speech.h
message:
Call Stack (most recent call first):
CMakeLists.txt:22 (yarp_prepare_plugin)
Any suggestions?
Thanks!
Hi @amaroyo !
You are missing the CATEGORY device
parameter of the yarp_prepare_plugin
cmake macro, see https://github.com/robotology/yarp/blob/9a395f6e41e01d8d350b6a4e5e2b2f6c6f913b74/example/externaldevices/foo/fooBot/CMakeLists.txt#L12 for an example and https://github.com/robotology/yarp/blob/9a395f6e41e01d8d350b6a4e5e2b2f6c6f913b74/cmake/YarpPlugin.cmake#L120 for the yarp_prepare_plugin
docs.
@traversaro, :) Thanks, that solved the problem of the CMakeList. Shall we update the CMakeLists file in github?
However, I still have the same problem of the library linking. I tried to update and recompile everything but it doesn't solve the issue. :/
Shall we update the CMakeLists file in github?
It depends, if the project is also meant to still work with the last release of YARP, I think we still need to use the old deprecated interface.
The loading error seem related to a misconfigured rpath: probably you need either to fix the rpath configuration of this library (difficult, if you are not en expert) or just add the directory in which the YARP libraries are installed in LD_LIBRARY_PATH
.
I'll be dealing with the update issue as soon as the VVV school is over.
@pattacini, please let me know if you have any updates!
Thanks!