Android 无法启动新构建的CyanogenMod 13

Android 无法启动新构建的CyanogenMod 13,android,boot,cyanogenmod,selinux,Android,Boot,Cyanogenmod,Selinux,在为我的设备(12.1)试用了最新版本的CM之后,我决定尝试构建我的第一个ROM。因此,我获得了Linux、13的同步源等等(我的设备树是) 在最终构建之前,我不得不处理一些与音频相关的构建错误。(如果有什么区别的话,我必须恢复的所有提交都与PCM音频卸载有关。) 现在,当我尝试启动ROM时,它会立即重新启动以进行恢复,甚至不会显示启动动画。查看/proc/last\u kmsg,问题似乎与SELinux有关: ... [ 4.340084] init: (Initializing SEL

在为我的设备(12.1)试用了最新版本的CM之后,我决定尝试构建我的第一个ROM。因此,我获得了Linux、13的同步源等等(我的设备树是)

在最终构建之前,我不得不处理一些与音频相关的构建错误。(如果有什么区别的话,我必须恢复的所有提交都与PCM音频卸载有关。)

现在,当我尝试启动ROM时,它会立即重新启动以进行恢复,甚至不会显示启动动画。查看
/proc/last\u kmsg
,问题似乎与SELinux有关:

...
[    4.340084] init: (Initializing SELinux enforcing took 0.51s.)
[    4.349071] type=1400 audit(1468237723.015:4): avc:  denied  { fowner } for  pid=1 comm="init" capability=3  scontext=u:r:kernel:s0 tcontext=u:r:kernel:s0 tclass=capability permissive=0
[    4.349387] init: SELinux: Could not set context for /init:  Operation not permitted
[    4.349506] init: restorecon failed: Operation not permitted
[    4.349699] init: Security failure; rebooting into recovery mode...
[    4.350353] SysRq : Emergency Remount R/O (triggered by init:1)
[    4.350581] Emergency Remount complete
[    4.350889] reboot - triggered with task: init (1:1)
...
我不熟悉SELinux,除了它使系统修改变得更加困难之外,但从我所看到的,Android源代码中的设备特定和通用
init.te
文件都允许
init
使用
fowner
功能

我试过:

  • 通过允许
    init
    域来修改
    sepolicy
    文件
  • 使用
    permissive init重建整个ROM
    init.te
  • init.rc
  • 使用
    EXTRA\u CFLAGS+=-DCONFIG\u ALWAYS\u exforce=true重新构建设备内核
  • 在Google-a上搜索解决方案与我的问题完全相同,但他/她随后发布的帖子并未在这一问题上产生任何进展或解决方案
它们都没有什么不同,所以基本上,我没有新的想法


我做错了什么?

您是否正确地将ROM插入设备?也许来自CM的版本可能会有所帮助(即使它们适用于稍旧的版本)。我假设您拥有HTC One X+是因为“enrc2b”。@Desirius是的,我按照说明进行了构建和安装(稍作修改-由于One X+没有S-OFF,TWRP无法直接闪存引导,因此我必须自己在fastboot中闪存引导)。您的设备的ROM是否正确?也许来自CM的版本可能会有所帮助(即使它们适用于稍旧的版本)。我假设您拥有HTC One X+是因为“enrc2b”。@Desirius是的,我按照说明进行了构建和安装(稍作修改-因为One X+没有S-OFF,TWRP无法直接闪存启动,所以我必须自己在fastboot中闪存启动),但没有用。