只记录本人遇到的,错误往往多变,本文没有涉及的请再自行查找。
个人配置时遇到的错误,仅作整理记录方便日后再用
文章目录
- cmake时遇到的错误
- make时遇到的错误
- 1. Failed to checkout tag: 'master'
- 2. error:'char* __builtin_strncpy(char*, const char*, long unsigned int)' specified bound 2056 equals destination size [-Werror=stringop-truncation] 106 | return __builtin_strncpv_chk (__dest, __src, __len, __bos (__dest));
- 3. fatal error: stropts.h: 没有那个文件或目录 24| #include<stropts.h>
- 4. error: 'ioctl' was not declared in this scope 34| ioctl(fd, TCGETS2, &tty);
cmake时遇到的错误
ls: 无法访问’/home/usr/Qt/': 没有那个文件或目录
解决方法:
将sripts下的find_qt_path.sh文件改成自己的Qt的版本和安装目录
- 双击打开.sh文件(ps:此时是阅读模式,无法进行编辑)
- 键盘敲下i,此时进入编辑模式
- 因为本人得到Qt就放在home下,所以在此处直接更改Qt为自己的当前版本号
- 此时保存退出。先按esc键,再在键盘敲下 【:wq 】(括号里面的部分),再敲下回车键,就保存成功了
make时遇到的错误
1. Failed to checkout tag: ‘master’
解决方法:
将common文件夹下的CMakeLists.txt中的如下图所示位置的master改成main
2. error:‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 2056 equals destination size [-Werror=stringop-truncation] 106 | return __builtin_strncpv_chk (__dest, __src, __len, __bos (__dest));
如下图所示:
解决方法
将主目录的CMakeLists.txt里的2个 -Werror 删掉
如下所示位置:
3. fatal error: stropts.h: 没有那个文件或目录 24| #include<stropts.h>
如下图所示:
解决方法:
- 在usr>include下新建txt文件
- 双击进入,并写入:
#if HAVE_STROPTS_H
#include <stropts.h>
#endif- 再将文件改名为stropts.h
4. error: ‘ioctl’ was not declared in this scope 34| ioctl(fd, TCGETS2, &tty);
如下图所示:
解决方法:
在robot>src>rt路径下的rt_serial.cpp文件中
将#include<asm/termios.h>注释掉
再新填上三行:(下图所圈起来的部分)
#include<asm/ioctls.h>
#include<asm/termbits.h>
#include<sys/ioctl.h>
如下图所示,右边是源码,左边是改后的: