myCobotCpp 编译运行
1 下载
1.1 源码下载
github 上下载MycobotCpp。
1.2 动态库下载
依赖库下载(下载最新版本,注意选择Windows或者Linux,后缀.zip 为 Windows 所需要的库,.tar.gz 为 Linux 需要的库)
2 Windows 下运行
2.1 编译
vs2019 打开 MycobotCpp,选择 x64-Release 编译(启动项旁边,如果没有,点击下拉框--》管理配置进行添加),同时 cmake 设置的配置处也要选择 release,最后点击生成。注意:一定选择 x64-Release 进行编译,具体如下图所示:
2.2 运行
- 添加库文件:将.lib 添加到 myCobotCpp/lib,.lib 和.dll 添加到 myCobotCppExample.exe 同级目录下,如 out/build/x64-Release/bin(.lib 和.dll 这两个文件在 myCobotCpp-0.0.3-windows-msvc-x86_64.zip 压缩包内)
- 运行:选择启动项(绿色播放键旁,也就是运行按钮旁),下拉选择 myCobotCppEXample.exe(bin\myCobotCppExample.exe),点击运行,具体如下图所示:
2.3 常见问题及解决办法:
运行时错误:
- 如果 myCobotCpp.dll 缺失,将之前放到 lib 目录下的 myCobotCpp.dll 放到 mycobotcppexample.exe 所在目录下
- 如果报缺少 QT5Core.dll,打开 qt command(菜单栏搜索 QT),选择 msvc 2017 64-bit,执行 windeployqt --release myCobotCppExample.exe 所在目录(如:windeployqt --release D:\vs2019\myCobotCpp\out\build\x64-Release\bin) 此处执行命令后如果报找不到 vs 安装路径,请检查 vs 环境变量的设置
- 以上步骤执行后,如果报缺少 qt5serialport.dll 文件,将 qt 安装目录处的此文件(路径如:D:\qt5.12.10\5.12.10\msvc2017_64\bin),拷贝到 myCobotCppExample.exe 所在目录
3 Linux 下运行
3.1 编译构建
- mkdir build && cd build
- cmake ..
- cmake --build .
3.2 运行
- 复制所有.so 文件到 lib 目录下
- 命令行运行:./bin/myCobotCppExample(此处是在 build 目录下运行)
4 在 Ubuntu20.04 上运行
4.1 编译
- mkdir build && cd build
- cmake ..
- cmake --build .
4.2 运行
- 复制所有.so 文件到 lib 目录下(注意下载后解压,不要在 Windows 解压后复制到 Ubuntu,直接在 Ubuntu 解压,如:tar -xvf 然后直接拖动文件到终端)
- 将 libQt5SerialPort.so.5(在 QT 安装目录,如:/home/“用户名”/Qt5.12.10/5.12.10/gcc_64/lib)软链接到 mycobotcpp/build/bin(不要直接复制),命令如下(注意选择你们的路径):ln -s /home/“用户名”/Qt5.12.10/5.12.10/gcc_64/lib/libQt5SerialPort.so.5 /home/“用户名”/myCobotCpp/build/bin/libQt5SerialPort.so.5
4.3 常见问题及解决办法
编译时出错:
找不到 QTDIR。解决:查看 QTDIR 是否配置正确,可在命令行输出查看:echo $QTDIR运行时出错:
串口问题:无法打开串口。解决:修改机械臂串口权限,不能直接 chmod...,这样每次重启都要再次该权限。直接修改文件:cd /etc/udev/rules.d
- sudo gedit 20-usb-serial.rules
- 在文件在加入:KERNEL=="ttyUSB*" MODE="0777"
- 找不到文件问题:如无法打开或者找不到 libQt5SerialPort.so.5。解决:检查上面的运行步骤 2
注意
如果不使用 cmake 编译,如直接在 MFC 中使用,按下图所示进行配置: