sunsili 发表于 2024-4-7 15:16:54

【openwrt】编译openwrt报错 invalid escape sequence

本帖最后由 sunsili 于 2024-4-7 16:22 编辑

【openwrt】编译openwrt报错 invalid escape sequence


报错解释:

在编译OpenWrt时遇到“invalid escape sequence”错误,通常是因为Makefile或其他Makefile调用的脚本文件中存在非法的转义序列。在字符串中,\ 是转义字符,后面通常跟着一个特定的字符来实现特定的转义功能,比如\n表示换行。如果\后面跟着的字符不是Makefile中定义的转义字符,就会出现这个错误。

解决方法:

定位错误:查看具体的编译输出,找到报错的具体位置,通常会指向一个文件和行号。

检查Makefile:打开Makefile或相关的脚本文件,检查\后面的字符是否是一个有效的转义字符或者是否根本不需要转义。

修改转义字符:如果\后面的字符不需要转义,可以去掉\。如果需要保留转义效果,确保使用的字符是有效的转义字符,如\t、\n、\r等。

确保字符串正确:如果字符串由多行组成,确保每一行的结束都使用了正确的转义序列或者是使用了三引号(""")来包裹多行文本。

保存文件并重新编译:修改完成后保存文件,并重新尝试编译OpenWrt。

如果不熟悉Makefile的语法,可能需要查询相关文档以了解如何正确地使用转义字符。


参考:
openwrt: Makefile 框架分析-谷动谷力 (sunsili.com)
C语言基础教程-编译智能化之Makefile应用-谷动谷力 (sunsili.com)
Linux开发笔记-Makefile简介-谷动谷力 (sunsili.com)
【C语言智能编译一步步学习编写Makefile】Makefile介绍-谷动谷力 (sunsili.com)
页: [1]
查看完整版本: 【openwrt】编译openwrt报错 invalid escape sequence