s***i 发帖数: 6149 | 1 * 本教程在Ubuntu 12.04/13.10/14.04下测试通过。最后测试核对时间4月22日。
* 本教程适用机型:Verizon GS3(d2lte),编译其它设备理论上只需要最后一步改device
code即可
xda和网上的一些tutorial都不甚完全,主要是没有下载device tree和proprietary
blob的信息,所以我自己总结了一套,希望能抛砖引玉。我现在手机上安装的就是此教
程编译出来的KK 4.4.2
请预备至少60G硬盘空间,推荐100G.
References
* http://source.android.com/source/initializing.html
* http://wiki.cyanogenmod.org/w/Build_for_d2vzw
* http://wiki.cyanogenmod.org/w/D2vzw_Info
* http://wiki.cyanogenmod.org/w/D2lte_Info
* http://forum.xda-developers.com/showthread.php?t=2364970
* http://rootzwiki.com/topic/32731-how-to-get-the-proprietary-files-for-cm10aokpetc-for-your-device/
* https://android.googlesource.com/platform/manifest
1.Install latest Android Development kit from google android site. we will
assume it's in ~/android-sdk
2. install necessary packages
$ sudo apt-get install git gnupg flex bison gperf build-essential
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386
libgl1-mesa-dev g++-multilib mingw32 tofrodos
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu
/libGL.so
$sudo apt-get purge openjdk*
$sudo add-apt-repository ppa:webupd8team/java
$sudo apt-get update
$sudo apt-get install oracle-java6-installer
$sudo apt-get install schedtool (optional)
3.configure environment variables in ~/.bashrc
# Android tools
export USE_CCACHE=1
export PATH=${PATH}:~/android-sdk/tools
export PATH=${PATH}:~/android-sdk/platform-tools
export PATH=${PATH}:~/bin
#optional, if not set, will be default to ./out
export OUT_DIR_COMMON_BASE=~/your/out/dir
4.(Optional) configure usb access for your android phone by pasting the
following content to /etc/udev/rules.d/51-android.rules
#Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
#ASUS
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666"
#Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666"
#Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666"
#Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="091E", MODE="0666"
#Google
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666"
#HTC
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666"
#Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666"
#K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666"
#KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666"
#Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666"
#Lenevo
SUBSYSTEM=="usb", ATTR{idVendor}=="17EF", MODE="0666"
#LG
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666"
#Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666"
#NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666"
#Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666"
#Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666"
#OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666"
#Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", MODE="0666"
#Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666"
#PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666"
#Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666"
#SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666"
#Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666"
#Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666"
#Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666"
#Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666"
#ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="19D2", MODE="0666"
then run
sudo chmod a+r /etc/udev/rules.d/51-android.rules
5.Download google repo (google's android source code management tool on top
of git)
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
6.create your source directory, e.g. Android, and initialize repo
$mkdir Andorid
$cd Android
$repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0 # for 4.4.
2
7.start downloading source, this step will take significant amount of time
$repo sync
8.get prebuilt binaries
$ cd vendor/cm
$ ./get-prebuilts
9.get vendor code
$git clone https://github.com/TheMuppets/proprietary_vendor_samsung.git ./
vendor/samsung
10.prepare device specific code
$breakfast d2lte
11.Now set the environment and build!
$. build/envsetup.sh
$brunch d2lte
12.用custom recovery clean install编译出的zip文件 | t**r 发帖数: 3428 | | z*******n 发帖数: 1034 | 3 http://en.wikipedia.org/wiki/CyanogenMod
CyanogenMod
本條目存在如下問題,請協助改善本條目或在討論頁針對議題發表看法。
本条目需要更新。 (2013年12月21日)
本条目需要补充更多来源。 (2012年5月19日)
本条目需要編修,以確保文法、用詞、语气、格式、標點等使用恰当。
CyanogenMod CyanogenMod-logo.pngCyanogenMod 10 homescreen screenshot.png
開發者 Cyanogen(Steve Kondik)/CyanogenMod 團隊
作業系統家族 嵌入式作業系統
源码模式 免費開放原始碼軟體
初始版本 3.1(HTC Dream 和 HTC Magic)
穩定版本 10.2 / 2013年12月2日;5個月前
測試版本 11.0 M2 / 2014年1月3日;4個月前
市場取向 供Android裝置的韌體
支持的语言 多语言
支持的编程语言 核心:C
部份函式庫:C++
使用者介面:Java
支援平台 ARM架構
預設使用者介面 ADWLauncher (6.x - 7.x) / Trebuchet (9.x - 11.x)
授權條款 Apache 2与GPLv2(免費軟體)
官方網站 http://www.cyanogenmod.org
CyanogenMod(發音:/saɪ.ˈæn.oʊ.ˌdʒɛn.m
594;d/)是一個開放原始碼的作業系統套件,基於Android行動平台而開發,主要使用
於智慧型手機與平板電腦裝置上。它提供一些在官方Android系統或手機廠商沒有提供
的功能,像是:支援FLAC音訊格式、快取壓縮(Compcache)、大量的APN名單、重新啟
動功能等。CyanogenMod 也是第一個使用腦殘排程器(BFS, Brain Fuck Scheduler)
作工作管理的作業系統[1]。
目录
1 歷史
2 版本
2.1 CyanogenMod 6
2.2 CyanogenMod 7
2.3 CyanogenMod 8
2.4 CyanogenMod 9
2.5 CyanogenMod 10
2.6 CyanogenMod 10.1
2.7 CyanogenMod 10.2
2.8 CyanogenMod 11
3 吉祥物
4 使用人數
5 硬件设备
6 版本歷史
7 參考文獻
8 外部連結
歷史
2008 年9月HTC Dream手機發佈後,Android 社群發現其中一個可以在 Android 得到稱
為「root」的最高權限方法[2]。這個發現結合了 Android 開源的性質,讓手機的韌體
可以隨意進行修改和重新安裝到手機。某些手機並不需要進行修改,如 Android 開發
手機和Nexus One[3]。
目前最新的 CyanogenMod 版本是基於Android 4.4 下去開發,並加入大量自製的原始
碼。CyanogenMod的原始碼本來是由Cyanogen(本名Steve Kondik)編寫,後來也加入
了xda-developers社群強化過的主畫面、撥號程式和網頁瀏覽器,另外也加入 BusyBox
等其它的程式。
CyanogenMod Updater程式會提醒使用者有新版本的CyanogenMod,且也能順便協助安裝
到他們的手機裡。使用者可以在 Google Play 下載該程式。但從5.0版本起,這個程式
就不咦髁耍荒芡高^ Rom Manager 尋找韌體更新。直到10.0版本起,更新功能已重新
加入至CyanogenMod。
原本CyanogenMod包含Google的一些专有软件(如Gmail及Android Market),但Google
於2009年9月發出律師信要求該團隊不得再散布CyanogenMod,此舉引起部份
CyanogenMod愛好者的反彈,認為Google公司違反其「不作惡」的經營口號,
CyanogenMod一度暫停咦鳎耸录惨鹨恍┟襟w的注意而加以報導。在兩方協調之後
,CyanogenMod恢復開發工作,但不能再包含Google的专有App,僅提供連結由使用者自
行下載安裝。
CyanogenMod的創辦人Steve Kondik 在2011年被Samsung招攬加入手機軟體開發的工作[
4],而Sony更提供手機給開發團隊[5]。
2012年12月,Steve Kondik自Samsung離職,12月13日他在 Palo Alto 創辦了
CyanogenMod Inc.,CyanogenMod 开始商业化。CyanogenMod 的商业化引起原团队部分
成员的不满,这些成员退出了 CyanogenMod 团队,另外组建了 OmniROM。
2014年5月4日,CyanogenMod 宣布 ROM 程序包不再发布稳定版及RC版,而是以计划每
月发布两次的 Milestone 版(M版)来替代原来的稳定版(stable)。
版本
CyanogenMod 6
當時Steve Kondik所發佈的Cyanogenmod 6基於Android2.2開發,代號為"Froyo",支援
的機型有 Google Nexus one,HTC Dream,HTC Magic,Motorola Droid,HTC aria,
HTC Legend,HTC Desire,HTC Evo 4G,HTC Hero,HTC Wildfire,HTC Incredible,
和T-Mobile my Touch 3G slide,首個測試版本發佈於2010年7月11日,而穩定版本則
發佈於2010年8月28日。
CyanogenMod 7
CyanogenMod團隊所開發的CyanogenMod 7是基於Android2.3 Gingerbread固件源碼。其
中CyanogenMod 7的自定義部份是由Steve Kondik所編寫,但有部份由論壇xda-
developers的開發者協助,例如改良後的啟動器,撥號畫面,和瀏覽器。
CyanogenMod 8
原本計劃CyanogenMod 8將會基於Android 3.0 Honeycomb開發,由於Google沒有開源
Android 3.0的源碼,計劃拖延至Google發佈Android 4.0,CyanogenMod團隊表示會跳
過CyanogenMod 8的開發而直接開發基於Android 4.0的CyanogenMod 9。
CyanogenMod 9
CyanogenMod 9是基於Google的Android 4.0 Ice Cream Sandwich,Steve Kondik和他
的CyanogenMod團隊宣佈準備開發。在2011年11月Google發佈Android 4.0.1的源碼後幾
天,穩定版CM 9.0.0本已經釋出。
CyanogenMod 10
CyanogenMod 10是基於Google的Android 4.1 Jelly Bean開發的。在2012年11月14日穩
定版已經釋出。
CyanogenMod 10.1
CyanogenMod 10.1基於2012年10月29日Google發布的Android 4.2。2013年6月25日穩定
版 CyanogenMod 10.1 釋出。[6]
CyanogenMod 10.2
CyanogenMod 10.2 基于 Google 2013年7月25日发布的 Android 4.3(Jelly Bean 果
凍豆)开发。2013年9月9日发布的 CyanogenMod 10.2 每夜版首次包含 CyanogenMod
账户功能。
CyanogenMod 11
2013年11月6日,Cyanogen團隊宣佈開始著手基於Android 4.4的CyanogenMod 11開發工
作。
吉祥物
原有的吉祥物"bugdroid"
吉祥物"CID"
早期CyanogenMod的吉祥物是踏着滑板的Android公仔"bugdroid"。2012年4月4日,
CyanogenMod以“需要一个看起来更成熟的吉祥物”为由,推出了名為"Cid"的新吉祥物
取代"bugdroid"。其名"Cid"是"CyanogenMod ID"的缩写。[7]
使用人數
自測試版本以來,CyanogenMod 每天有1000次安裝。[8]而到了2013年,这个数字达到
了每日上万次。[9]
硬件设备
CyanogenMod 团队与Oppo公司 联合推出的限量版CyanogenMod版Oppo N1,于2013年12
月24日开始发售。
版本歷史
CyanogenMod
版本 Android版本 發行日期 更新
3.1 Android 1.5 (Cupcake) 2009
3.2 2009
3.3.x 2009
3.4.x 2009
3.5.x 2009
3.6.x 2009
3.9.x 2009
4.0.4 Android 1.6 (Donut) 2009
4.1.x 2009
4.2.x 2009
5.0.0 Android 2.0 / 2.1 (Eclair) 2010-02-14[10]
5.0.1 2010
5.0.2 2010
5.0.3.x 2010
5.0.4.x 2010-02-27[11]
5.0.5.x 2010-03-19[12]
5.0.6 2010-04-16[13]
5.0.7 2010-05-25[14]
5.0.8 2010-07-19[15]
6.0.x Android 2.2 (Froyo) 2010-08-28
6.1.0 2010-12-06[16]
7.0.x Android 2.3.3 (Gingerbread) 2011-04-11[17]
7.1 Android 2.3.7 (Gingerbread) 2011-10-10
7.2 2012-06-16
8.x Android 3.x (Honeycomb) 取消開發
9.0 Android 4.0 (IceCream Sandwich) 2012-08-10
10.0 Android 4.1 (Jelly Bean) 2012-11-14
10.1 Android 4.2.2 (Jelly Bean) 2013-06-25
10.2 Android 4.3 (Jelly Bean) 2013-08-14
11 Android 4.4 (KitKat) 2013-12-05[18]
device
【在 s***i 的大作中提到】 : * 本教程在Ubuntu 12.04/13.10/14.04下测试通过。最后测试核对时间4月22日。 : * 本教程适用机型:Verizon GS3(d2lte),编译其它设备理论上只需要最后一步改device : code即可 : xda和网上的一些tutorial都不甚完全,主要是没有下载device tree和proprietary : blob的信息,所以我自己总结了一套,希望能抛砖引玉。我现在手机上安装的就是此教 : 程编译出来的KK 4.4.2 : 请预备至少60G硬盘空间,推荐100G. : References : * http://source.android.com/source/initializing.html : * http://wiki.cyanogenmod.org/w/Build_for_d2vzw
|
|