首页板块列表刷机技术阅读帖子

编译错误解决方法

发布时间:2015-05-19 18:153回复、2072阅读

前言:关于Android4.4/CM11编译中遇到的一些错误,本人进行了整理。有需要的童鞋可以做个参考,如果有什么建议也欢迎指出!

问题1:

编译时遇到:make: *** 没有规则可以创建“/home/xxx/cm11/out/target/common/obj/JAVA_LIBRARIES/webviewchromium_intermediates/classes-full-debug.jar”需要的目标“/home/xxx/cm11/out/target/common/obj/JAVA_LIBRARIES/android_webview_java_intermediates/javalib.jar”。 停止。 make: *** 正在等待未完成的任务.... ...

解决方法:

删除device配置文件下BoardConfig.mk中的PRODUCT_PREBUILT_WEBVIEWCHROMIUM := yes这段代码!

问题2:

华为的机子编译可能遇到:frameworks/opt/telephony/../../../device/huawei/c8815/ril/HuaweiQualcommRIL.java:140: 错误: 找不到符号 case RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION: ret = responseInts(p); break; ^ 符号: 变量 RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION 位置: 类 HuaweiQualcommRIL.java target Dex: CMFileManager 注: 某些输入文件使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 注: 某些输入文件使用了未经检查或不安全的操作。 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。 1 个错误 make: *** [/home/jere0035/work/out/target/common/obj/JAVA_LIBRARIES/telephony-common_intermediates/classes-full-debug.jar] 错误 41 make: *** 正在等待未完成的任务....

解决方法:

修改140行(不一定在140行,根据错误报告找到函数) 140(原来的) case RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION: ret = responseInts(p); break; 140(修改后) case RIL_REQUEST_ENTER_DEPERSONALIZATION_CODE: ret = responseInts(p); break; 其实就是把这一句代码NETWORK_DEPERSONALIZATION改为DEPERSONALIZATION_CODE

问题3: 遇到recovery源码问题,我是尝试修改recovery源码,我是把cm11自带的源码改为twrp的源码,但是twrp源码要添加分辨率等设置到device下的BoradConfig.mk

因为编译TWRP多了很多需要手动设置硬件方面的配置参数,没有默认设置的,所以我们需要写入这些 # Platform TARGET_CPU_ABI := armeabi-v7a TARGET_CPU_ABI2 := armeabi TARGET_ARCH_VARIANT := armv7-a-neon ARCH_ARM_HAVE_TLS_REGISTER := true ARCH_ARM_HAVE_NEON :=true ARCH_ARM_HAVE_VFP := true 由于C8815使用的是EXT4分区所以我们还要写入 TARGET_USERIMAGES_USE_EXT4 := true BOARD_USES_MMCUTILS := true BOARD_HAS_LARGE_FILESYSTEM := true 我们设置没有select按钮 BOARD_HAS_NO_SELECT_BUTTON := true 分辨率 480*800 DEVICE_RESOLUTION := 480×800 没有misc分区

BOARD_HAS_NO_MISC_PARTITION := true

问题4: 自编译内核需要在BoardcConfig.mk添加内核目录以及config 例如:# Kernel TARGET_KERNEL_SOURCE := kernel/zte/msm7x27a(解释:这一句是定义到你放内核的目录下) TARGET_KERNEL_CONFIG := cyanogen_atlas40_defconfig(解释:这一句是定义到你放内核的目录下Config的名称)

问题5: 遇到编译twrp刷入画面跳屏幕的情况 解决方法: 修改recovery/minui/graphics.c,注释掉 if (double_buffering) gr_active_fb = (gr_active_fb + 1) & 1; 这一段代码,重新编译便可以了

问题6: 有时候遇到recovery不读内存卡的话 解决方法: 这个原因多数是recovery.fstab的问题,cm11对recovery.fstab进行重新写法定义,有时候需要修改recovery.fstab的写法或者修改源码bulid部分(可以参考cm10.1或者以前的版本)

问题7: 编译rom刷入后遇到“set_metadata_xxx fails” 解决方法: 在源码/bootable/recovery/updater/install.c找到parsed.has_capabilities = true修改为parsed.has_capabilities = false,编译出来的ROM就可以在旧版recovery刷入,其实就是update-binary导致。也可以手动找到合适的update-binary直接替换到rom中!

问题8: Android编译源码时禁用werror避免报错 解决方法1: 修改源码目录下的 build/core/config.mk 如下: - TARGET_ERROR_FLAGS := -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point + #TARGET_ERROR_FLAGS := -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point + TARGET_ERROR_FLAGS := 解决方法2: 如果是单个模块中的错误就找到报错模块下的Android.mk,把编译标志 Werror去掉就可以。方便起见,我是直接把所有的makefile中的Werror全部去掉了,当然要做好备份。 在Android.mk中添加标志禁用指定的Werror类型也可以: LOCAL_CFLAGS += -Wno-error=format-security

问题9: 编译遇到webviewclassic错误,无法创建,错误41 解决方法: 找到frameworks/base/core/java/android/webkit下的WebViewClassic.java注视掉1366和1372的head和Allow using Classic WebView一段!

问题10: 遇到无法创建out/target/product/xxx/boot.img需要的目标out/target/product/xxx/kernel 解决方法: 查看内核存放的位置与boardconfig.mk定义的位置是否相同

问题11: 遇到如下错误 Traceback (most recent call last): File "../../base/android/jni_generator/jni_generator.py", line 1065, in sys.exit(main(sys.argv)) File "../../base/android/jni_generator/jni_generator.py", line 1061, in main options.optimize_generation) File "../../base/android/jni_generator/jni_generator.py", line 996, in GenerateJNIHeader jni_from_javap = JNIFromJavaP.CreateFromClass(input_file, namespace) File "../../base/android/jni_generator/jni_generator.py", line 507, in CreateFromClass stderr=subprocess.PIPE) File "/usr/lib/python2.7/subprocess.py", line 679, in __init__ errread, errwrite) File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory 解决方法就是:(假如你是jdk1.6.0_45的版本,其他版本修改相应位置) 1)JDK1.6安装 http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html uname -a 查看ubuntu版本,选择和ubuntu 32位/64位对应的jdk版本(i586/x64)。 2) JDK环境变量配置 #set java environment export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH 3)装jdk的时候,少装了javap工具。 update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_45/bin/javac 1 update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_45/bin/java 1 update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.6.0_45/bin/javaws 1 update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.6.0_45/bin/jar 1 update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/jdk1.6.0_45/bin/javah 1 update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/jdk1.6.0_45/bin/javap 1 update-alternatives --config javac update-alternatives --config java update-alternatives --config javaws update-alternatives --config jar update-alternatives --config javah update-alternatives --config javap javap是jdk自带工具,可反编译,也可查看java编译器生成的字节码。 git sudo apt-get install git git-core 或者假如你的jdk是装在usr/jvm中的,那么 cd /usr/bin/ /usr/bin$ sudo ln -s -f javap

(0)(0)

本贴有需要购买的内容

还未登陆噢,无法回复登录

以下为本帖回复列表

2016-10-0301:15

3楼

2016-02-0622:45

2楼

感谢分享

2015-05-1919:07

1楼

你的标题咧,等下删帖的啊

共 3 条20条/页

40条/页

50条/页

128条/页

无数据1前往

java telephony jar_编译错误解决方法相关推荐

  1. yolact模型DCNv2模块编译错误解决方法

    配置环境 1. Ubuntu 18.04 2. Anaconda 3.Cuda10.2+cudnn7.6.5 问题描述 按照yolact(https://github.com/dbolya/yolac ...

  2. Error: illegal character: '\u200b'编译错误解决方法

    Error: illegal character: '\u200b' 编译错误如下 错误原因 此类错误关注这个错误的字符--'\u200b' '\u200b'表示为zero-width-space,以 ...

  3. 射手播放器编译错误解决方法(splayer)

    1. 编译时有几个处需要统一: 字符集要统一,或者都为Unicode编码: MFC的使用,或者都选为在共享DLL中使用MFC: 使用ATL,或者都选中动态链接到ATL: 另外该安装的库要装上,如Dir ...

  4. FreeCAD编译错误解决方法

    freeCAD是学习OCC库和Qt的一个重要开源软件,但在vs编译时很容易出现错误,例如我就出现了如下关于PartDesign的错误.在网上查了一些解决方法后,解决方法流程如下: 1)在cpp前面添加 ...

  5. machoview github原版下载后编译错误解决方法,附能编译的源码下载

    文章目录 错误:unable to find sdk 'macosx10.9' 错误:'string' file not found 错误:'capstone.h' file not found wi ...

  6. Thrift编译错误解决方法

    下面这个错误可能是因为DOS(Windows)和Unix文件格式问题: checking whether g++ supports C++11 features by default... no ch ...

  7. 使用ZjDroid时出现了R.java不存在的错误解决方法

    ZjDroid是什么? 请看这篇文章: Android动态逆向分析工具ZjDroid--脱壳神器 今天第一次使用这个的时候出现了下图所示的错误: 提示:import com.android.rever ...

  8. vs2008添加excel类编译错误解决方法

    1.注释掉#import "C:\\Program Files\\Microsoft Office\\Office12\\EXCEL.EXE" no_namespace 2.选择添 ...

  9. java mail 554_【Java】JavaMail 554错误解决方法

    退信代码说明: •421 HL:REP 该IP发送行为异常,存在接收者大量不存在情况,被临时禁止连接.请检查是否有用户发送病毒或者垃圾邮件,并核对发送列表有效性: •421 HL:ICC 该IP同时并 ...

最新文章

  1. CodeForces - 1287C Garland(贪心)
  2. 创建css的时候选择器有哪几类,CSS3-CSS的选择器共有几类?
  3. 阿里云刘伟光:金融核心系统将步入分布式智能化的时代
  4. java容器遍历_高效遍历Java容器详解
  5. StringUtils 的使用
  6. realme GT2 Pro抢先开启盲售:史上屏幕最好高端旗舰
  7. 做自媒体花式撸收益?
  8. web driver selenium 操作滚动条
  9. .NET Core SDK在Windows系统安装后出现Failed to load the hostfxr.dll等问题的解决方法
  10. cvi调用matlab dll,cvi通过artix调用matlab
  11. leetcode771题
  12. 暴力破解-----token验证
  13. oracle年龄计算函数
  14. Zabbix3.4监控Linux主机CPU温度
  15. 计算机文件夹怎样显示隐藏文件,显示隐藏文件夹,教您电脑如何显示隐藏文件夹...
  16. HMC_Hamiltonian Monte Carlo 推导,代码
  17. 软件工程第二次作业--结对编程
  18. 应届生落北京集体户口
  19. vue图片时间轴滑动_使用vue,来写个时间轴
  20. html如何让文字变斜体,CSS中如何让文字变成斜体

热门文章

  1. partial部分类
  2. 高质量的棋牌游戏开发如何改善好用户体验?
  3. IE修改注册表来更改IE设置
  4. mysql数据库(3):使用数据库
  5. 解决Coursera的课程视频无法观看问题
  6. 1468:OKR-Periods of Words(kmp算法)
  7. 如何从Excel表格导入数据批量生成二维码
  8. android:ellipsize
  9. 拉伸图片的时候怎么才能让图片不变形
  10. 使用opentelemetry-go操作Jaeger