webots 调用自己的库除了添加.so,还有.h头文件
#include “…/…/include/controller/c/webots/LpUSBhid.h”
simulink里面的api调用,要在.m文件里面加
coder.extrinsic(‘calllib’);
还有matlab位置一定要正确
cd([WEBOTS_HOME ‘/controller/matlab’]);
关闭所有matlab再开webots
腿部不能自己画,要原本的结构碰撞
.m文件除了控制文件,其他api全部放到/controller/matlab下面
优先调用在./bashrc 声明的webots 文件下的lib
webots需要添加lib位置如下:
gedit ~/.bashrc
export WEBOTS_HOME=webots的安装位置
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:webots的安装位置/lib/controller
source ~/.bashrc
任何修改都要关闭所有webots,重新加载
Error using loadlibrary /home/leap-one/webots_build/webots-R2020b-rev1/lib/controller/matlab/libController_thunk_glnxa64.so: cannot open shared object file: No such file or directory Error in launcher (line 139) loadlibrary(libname,protofile,‘alias’,
这个要把除了/tmp下的/libController_thunk_glnxa64.so: 删除
collect2: error: ld returned 1 exit status
如果c++包含了c的代码一定要在c的代码头文件首尾加上
#ifdef __cplusplus
extern “C” {
#endif
#include “*.h”
#ifdef __cplusplus
}
#endif