首页 > 解决方案 > GCC 编译器错误:-Werror=stringop-truncation: no option

问题描述

我正在尝试运行 gcc 编译器来生成可执行文件,但是每当我在终端中运行“make”命令时都会得到这个:

Scanning dependencies of target my_libs-atmega328p
[  2%] Building CXX object my_libs/CMakeFiles/my_libs-atmega328p.dir/CLed.cpp.obj
cc1plus: error: -Werror=stringop-truncation: no option -Wstringop-truncation
make[2]: *** [my_libs/CMakeFiles/my_libs-atmega328p.dir/build.make:63:my_libs/CMakeFiles/my_libs-atmega328p.dir/CLed.cpp.obj] Error 1
make[1]: *** [CMakeFiles/Makefile2:246: my_libs/CMakeFiles/my_libs-atmega328p.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

我什至在它被绊倒的文件中都没有字符串(CLed.cpp),所以我不知道它为什么要截断字符串。我什至已经注释掉了整个文件,它仍在寻找东西。我可以去哪里寻找解决方案?

标签: c++cmakeavr-gcc

解决方案


我什至在它被绊倒的文件中都没有字符串(CLed.cpp),所以我不知道它为什么要截断字符串

它不是“试图截断字符串”,也不是警告“试图截断字符串”。

该错误表示编译器获得了该选项-Werror=stringop-truncation,而编译器无法识别此类警告选项。解决方案是不传递-Werror=stringop-truncation给编译器。或者使用另一个支持此类选项的编译器(版本)。


推荐阅读