Android的学习——ubuntu下android5.1源码的make编译
2015-08-21 17:31
453 查看
在repo sync下载源码后,经历了漫长的时间,终于可以进行下一步了。
在进行make之前还需要三个步骤。
1> source build/envsetup.sh:加载命令
2> lunch:选择平台编译选项
3> make:执行编译
一、
将envsetup.sh里的命令加载到环境变量中,完成一些初始化。
二、
如使用32位的ubuntu系统和Android4.几(具体不记得是第几版,0还是01),在执行lunch命令时会出错。当然这些错误可以在32位系统进行修改后,也可执行该命令,但是过程较麻烦。我之前就装的是32位的,花费了很多时间,多少还是有些小问题,最终还是改用64位的,所以建议还是安装64位的ubuntu系统。
三、
make -j4(根据个人电脑情况)
这是一个漫长的过程,会出现各种错误的情况。个人不建议使用make -k,因为错误情况都会忽略,而花费了很长时间编译后,还是不成功的。还是得重新回来找错误,解决它。
错误一:
Traceback (most recent call last):
File "scripts/make_css_property_names.py", line 238, in <module>
in_generator.Maker(CSSPropertiesWriter).main(sys.argv)
File "/root/Android_src/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py", line 119, in main
writer.write_files(options.output_dir)
File "/root/Android_src/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py", line 77, in write_files
self._write_file(output_dir, generator(), file_name)
File "scripts/make_css_property_names.py", line 233, in generate_implementation
gperf = subprocess.Popen(gperf_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 709, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1326, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
make: *** [out/target/product/generic/obj/GYP/shared_intermediates/blink/CSSPropertyNames.cpp] 错误 1
make: *** 正在等待未完成的任务....
解决:
确保已安装以下环境:
git gnupg flex bison gperf build-essential zip curl libc6-dev x11proto-core-dev g++-multilib tofrodos python-markdown libxml2-utils xsltproc
错误二:
ubuntu14.10上编译android5源码到libwebviewchromium.so后停止
解决:
参考http://jileniao.net/ubunt-add-swap-to-build-libwebviewchromium.html
错误三:
出现: java,javac:无效的目标版本 类似情况
解决:
javac的环境没设置好,或是javac没有安装好。
sudo update-alternatives --config java
sudo update-alternatives --config javac
查看当前使用的jdk,如有问题,请重新设置,切换java或重新下载jdk,再设置以下。
sudo update-alternatives --install /usr/bin/java java /usr/....(自己jdk所放的位置)/java 1051
sudo update-alternatives --install /usr/bin/javac javac /usr/....(自己jdk所放的位置)/javac 1051
其他错误,可以参考http://www.cnblogs.com/tao560532/p/3302444.html
在进行make之前还需要三个步骤。
1> source build/envsetup.sh:加载命令
2> lunch:选择平台编译选项
3> make:执行编译
一、
将envsetup.sh里的命令加载到环境变量中,完成一些初始化。
二、
如使用32位的ubuntu系统和Android4.几(具体不记得是第几版,0还是01),在执行lunch命令时会出错。当然这些错误可以在32位系统进行修改后,也可执行该命令,但是过程较麻烦。我之前就装的是32位的,花费了很多时间,多少还是有些小问题,最终还是改用64位的,所以建议还是安装64位的ubuntu系统。
三、
make -j4(根据个人电脑情况)
这是一个漫长的过程,会出现各种错误的情况。个人不建议使用make -k,因为错误情况都会忽略,而花费了很长时间编译后,还是不成功的。还是得重新回来找错误,解决它。
错误一:
Traceback (most recent call last):
File "scripts/make_css_property_names.py", line 238, in <module>
in_generator.Maker(CSSPropertiesWriter).main(sys.argv)
File "/root/Android_src/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py", line 119, in main
writer.write_files(options.output_dir)
File "/root/Android_src/external/chromium_org/third_party/WebKit/Source/core/scripts/in_generator.py", line 77, in write_files
self._write_file(output_dir, generator(), file_name)
File "scripts/make_css_property_names.py", line 233, in generate_implementation
gperf = subprocess.Popen(gperf_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 709, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1326, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
make: *** [out/target/product/generic/obj/GYP/shared_intermediates/blink/CSSPropertyNames.cpp] 错误 1
make: *** 正在等待未完成的任务....
解决:
确保已安装以下环境:
git gnupg flex bison gperf build-essential zip curl libc6-dev x11proto-core-dev g++-multilib tofrodos python-markdown libxml2-utils xsltproc
错误二:
ubuntu14.10上编译android5源码到libwebviewchromium.so后停止
解决:
参考http://jileniao.net/ubunt-add-swap-to-build-libwebviewchromium.html
错误三:
出现: java,javac:无效的目标版本 类似情况
解决:
javac的环境没设置好,或是javac没有安装好。
sudo update-alternatives --config java
sudo update-alternatives --config javac
查看当前使用的jdk,如有问题,请重新设置,切换java或重新下载jdk,再设置以下。
sudo update-alternatives --install /usr/bin/java java /usr/....(自己jdk所放的位置)/java 1051
sudo update-alternatives --install /usr/bin/javac javac /usr/....(自己jdk所放的位置)/javac 1051
其他错误,可以参考http://www.cnblogs.com/tao560532/p/3302444.html
相关文章推荐
- Android之TabHost布局
- 适应多行长文本的Android TextView
- Android 最火框架XUtils之注解机制详解
- Android GPS 取经纬度
- Android 最火的快速开发框架XUtils
- Android之单选按钮,复选框使用方法汇总
- Android笔记:异步消息处理
- Android笔记:多线程
- Android 开发指南
- Android 浅谈 设计与屏幕适配 【1.6235449734285716】
- Android应用开发--颜色拾取器. color picker
- Android 自动注释,导入模板文件
- AndroidManifest.xml
- android TextView中文字通过SpannableString设置属性
- Android TextView 一些字体颜色、大小设置属性
- android 点击拨打电话发短信
- 实现带清除效果的EditText
- Ubuntu下FFmpeg-Android-master编译过程
- Android错误汇总集锦
- Android 5.0 如何修改指定sim卡拨号