美文网首页物联网loT从业者物联网相关技术研究
解决方法:Ubuntu18.04下编译OpenWRT15.05遇

解决方法:Ubuntu18.04下编译OpenWRT15.05遇

作者: Leung_ManWah | 来源:发表于2020-06-24 15:24 被阅读0次

    一、问题1

    执行
    make V=99
    报出错误:
    Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/${ <-- HERE ([^ \t=:+{}]+)}/ at xxxx/usr/bin/automake line 3939

    二、原因

    从perl v5.22开始:不再推荐在正则表达式中使用 {,而且如果没有转义 { 会有错误警告,从v5.26开始:不仅有警告,还会有语法错误提示。
    此为Perl版本更新后对语法规范进行了变更,若左花括号作为文本则应当进行转义。

    三、解决方法

    openwrt 目录下
    cd build_dir/host/automake-1.15/bin/
    vim automake
    输入/text =
    找到$text =~ s/\${([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;
    修改为$text =~ s/\$[{]([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;

    四、问题2

    执行
    make V=99
    报出错误:
    build_dir/host/u-boot-2014.10/lib/rsa/rsa-sign.c:279:21: error: dereferencing pointer to incomplete type 'RSA {aka struct rsa_st}'

    五、原因

    此为Ubuntu18.04安装的libssl-dev为1.1版本,而OpenWrt 15.05.1不支持此版本,需要回退到1.0版本

    六、解决方法

    使用aptitude软件包管理器
    sudo apt-get install aptitude
    卸载之前的版本
    sudo aptitude remove libssl-dev
    安装1.0版本
    apt-get install libssl1.0.0


    • 由 Leung 写于 2020 年 6 月 24 日

    • 参考:UBUNTU 18.04下编译OPENWRT 15.05.1遇到的问题和解决方案

    相关文章

      网友评论

        本文标题:解决方法:Ubuntu18.04下编译OpenWRT15.05遇

        本文链接:https://www.haomeiwen.com/subject/ktprfktx.html