Could not load library (Poco exception = libMatlabDataArray.so: cannot open shared object file: No such file or directory)
12 ビュー (過去 30 日間)
古いコメントを表示
Hi,
we are using a custom designed ROS topic.
rosgenmsg runs without errors and myTopic is included to rosmsg list.
When calling
rostopic("echo", "myTopic")
there is the error:
Failed to create a ROS subscriber with topic name myTopic and message type myMsgType.
Stepping into rostopic, debugging ends at Subscriber.m Line 547:
returnCall = addSubscriber(obj.InternalNode, ...
serverNodeHandle, ...
obj.MessageInfo.path, ...
topic, ...
obj.MessageInfo.subscriberClassName, ...
callbackFcn, ...
bufferSizeSettings,false);
executing this call, the try...catch gets
ex =
MException with properties:
identifier: 'ros:internal:transport:SubscriberError'
message: 'Could not load library (Poco exception = libMatlabDataArray.so: cannot open shared object file: No such file or directory)'
cause: {}
stack: [5×1 struct]
Correction: []
Does anybody know the root-cause of these errors?
libMatlabDataArray.so is included into $LD_LIBRARY_PATH.
We are using Matlab2020b and ROS Melodic.
Thanks
0 件のコメント
回答 (2 件)
Cam Salzberger
2021 年 2 月 3 日
Hello Andreas,
This may be because you have conflicting libraries on your platform's library path. It may be related to this bug, or this one, that were both fixed in R2020b Update 3. Try getting the latest update and see if that resolves the issue.
Also see here for a similar issue with suggested resolutions. Though that question is regarding ROS 2, similar issues may be found in ROS 1.
General advice: If you have defined something outside of MATLAB to explicitly include libMatlabDataArray.so into your LD_LIBRARY_PATH, that may not be the best course of action (especially if you upgrade your MATLAB installation). It's recommended to allow MATLAB to add its own libraries to the path as needed.
-Cam
参考
カテゴリ
Help Center および File Exchange で Specialized Messages についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!