OmniROM:“Flex checkpolicy”出错

栏目: Android · 发布时间: 7年前

内容简介:编译OmniROM 8.1时,在这个地方出错:其中涉及到了Flex这款语法解释器生成器(lexical analyser generator),它的作用是将以Android Ninja编译系统的好处是,会将出错的命令记录在屏幕上。拷贝上述出错的命令,重新执行:

编译OmniROM 8.1时,在这个地方出错:

[ 21% 2441/11398] //external/selinux/checkpolicy:checkpolicy lex policy_scan.l [linux]
FAILED: /home/anclark/Wonderland/aosp3/omni8/out/soong/.intermediates/external/selinux/checkpolicy/checkpolicy/linux_x86_64/gen/lex/external/selinux/checkpolicy/policy_scan.c 
prebuilts/misc/linux-x86/flex/flex-2.5.39 -o/home/anclark/Wonderland/aosp3/omni8/out/soong/.intermediates/external/selinux/checkpolicy/checkpolicy/linux_x86_64/gen/lex/external/selinux/checkpolicy/policy_scan.c external/selinux/checkpolicy/policy_scan.l
flex-2.5.39: loadlocale.c:130: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.
Aborted (core dumped)

其中涉及到了Flex这款语法解释器生成器(lexical analyser generator),它的作用是将以 *.l 为扩展名的源文件编译成解释器的 C语言 代码。 checkpolicy 这个用于检测SELinux策略(SELinux policy)的工具,正是使用 flex 来解析策略文件的语法的。

Android Ninja编译系统的好处是,会将出错的命令记录在屏幕上。拷贝上述出错的命令,重新执行:

prebuilts/misc/linux-x86/flex/flex-2.5.39 -o/home/anclark/Wonderland/aosp3/omni8/out/soong/.intermediates/external/selinux/checkpolicy/checkpolicy/linux_x86_64/gen/lex/external/selinux/checkpolicy/policy_scan.c external/selinux/checkpolicy/policy_scan.l

发现问题依旧。

于是,笔者试着更换一个Flex版本,以 apt 安装的版本 2.6.4sudo apt install flex )尝试编译:

flex -o/home/anclark/Wonderland/aosp3/omni8/out/soong/.intermediates/external/selinux/checkpolicy/checkpolicy/linux_x86_64/gen/lex/external/selinux/checkpolicy/policy_scan.c external/selinux/checkpolicy/policy_scan.l

结果成功!

看来,问题就出在OmniROM源码附带的Flex 2.5.39 版本里。

暂时使用符号链接,将OmniROM自带的Flex更换为 apt 的最新版:

ln -s /usr/bin/flex prebuilts/misc/linux-x86/flex/flex-2.5.39

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Game Engine Architecture, Second Edition

Game Engine Architecture, Second Edition

Jason Gregory / A K Peters/CRC Press / 2014-8-15 / USD 69.95

A 2010 CHOICE outstanding academic title, this updated book covers the theory and practice of game engine software development. It explains practical concepts and techniques used by real game studios,......一起来看看 《Game Engine Architecture, Second Edition》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试