Closed EthanZengg closed 1 year ago
Hi @853734690 ,
You should update BaselineWalkingController
, the FirstOrderImpedanceTask
has been added to mc_rtc
and this is complaining about that (the task loader is being registered once in mc_rtc and once in the controller which is not allowed)
symbol lookup error: /usr/lib/x8664-linux-gnu/libTasks.so.1: undefined symbol: ql
This is strange. The ql_
symbol was removed from eigen-qld
a while back and the Tasks library should have been rebuilt without the symbol. How did you install and update mc_rtc?
Thanks for your quick reply .
I notice the latest version of BaselineWalkingControlle
have remove the FirstOrderImpedanceTask
, Thanks for your reminding.
In addition, I used the following command to install and update mc_rtc
and update it to latest stable version just now , but the problem still persists .
$ curl -1sLf 'https://dl.cloudsmith.io/public/mc-rtc/stable/setup.deb.sh' | sudo -E bash
$ sudo apt-get install libmc-rtc-dev mc-rtc-utils ros-${ROS_DISTRO}-mc-rtc-plugin ros-${ROS_DISTRO}-mc-rtc-rviz-panel libeigen-qld-dev
Could you check the output of dpkg-query -l libtasks-qld-dev libeigen-qld-dev
and also did you install mc_rtc packages manually on the side?
I don't have any record of installing mc_rtc packages manually . I check the out put and found that Tasks library maybe have not been rebuilt successfully.
==================================================================================================
ii libeigen-qld-dev 1.2.3-1debian1-2023031309052 amd64 eigen-qld - development files
ii libtasks-qld-dev 1.7.2-1debian1-2023012408242 amd64 tasks - development f
==================================================================================================
And today I update BaselineWalkingController
, there was an error show in the terminal:
Errors << baseline_walking_controller:make /home/zxa/ros/ws_bwc/logs/baseline_walking_controller/build.make.000.log
/usr/bin/ld: warning: libyaml-cpp.so.0.5, needed by /usr/lib/x86_64-linux-gnu/libmc_rtc_utils.so.2.4.0, may conflict with libyaml-cpp.so.0.7
/usr/lib/x86_64-linux-gnu/libTVM.so.0.9.0:undefined reference to ‘ql_’
collect2: error: ld returned 1 exit status
maybe they are the same reason ? I'm only new to this knowledge,hope to get your reply .
Thanks in advance
Hi @853734690
Yes. The tasks package is outdated (it was generated before the update to your eigen-qld package). Can you run apt upgrade
and make sure it gets updated? The same issue is probably affecting your TVM package (you can check the package date in dpkg-query -l libtvm-dev
Thank You for your reply. I have try it and everything goes well again! Thank You Best Regards
Hello, Dr.Gergondet @gergondet and Dr.Tanguy @arntanguy,I am so sorry to trouble you.
My current research topic is that use BaselineWalkingController for my robot .everything went smoothly yesterday . But today when I click the start simulation botton in the choreonoid , I get the following error in the terminal . It is shown the firstOrderImpedance is already handled by another loading function.
And then I go back to everything I've done before , I realized that I made the mistake of adding the firstOrderImpedance task by mc_rtc GUI ,but actually the tasks is already loaded by BaselineWalkingController .I think this is the main reason.
And then I rebuild my controller but It doesn't solve the problem, and my choreonoid project cannot load MCcontroller components as before.and then I select a sample controllers without the firstOrderImpedance task ,and get another error in the terminal:
choreonoid: symbol lookup error: /usr/lib/x86_64-linux-gnu/libTasks.so.1: undefined symbol: ql_
Could you give me some advice?