IamEasy_Man

Filled With Confidence , And Never Say Give Up !

2012年5月18日

【摘录】使用arm-eabi-addr2line, ndk-stack工具跟踪Android调用堆栈

使用arm-eabi-addr2line工具跟踪Android调用堆栈
作者:liangshengyang
转自:http://www.linuxidc.com/Linux/2011-01/31803.htm

在通常的C/C++代码中,可以通过响应对内存操作不当引起的Segmentation Fault错误即信号SIGSEGV(11)做出响应处理。只要在程序中设置SIGSEGV的handler中,调用libc的backtrace,打出对应的堆栈信息,很快就能找到问题所在。但在Android中,bionic并不提供类似功能,而且log信息是走的loger,通过logcat才可以看到。但是android也会输出log信息,象下面这样:

02-08 10:36:32.076: INFO/DEBUG(1261): pid: 1959, tid: 1959  >>> Android.radio <<<
02-08 10:36:32.076: INFO/DEBUG(1261): signal 11 (SIGSEGV), fault addr 00198080
02-08 10:36:32.076: INFO/DEBUG(1261):  r0 00198080  r1 81116dac  r2 ffffffea  r3 00000000
02-08 10:36:32.086: INFO/DEBUG(1261):  r4 8111a9f0  r5 0000000a  r6 00000888  r7 0000000a
02-08 10:36:32.086: INFO/DEBUG(1261):  r8 735f6d66  r9 525f6474  10 4104bcd8  fp 00000000
02-08 10:36:32.086: INFO/DEBUG(1261):  ip a0000000  sp bec1a300  lr 81112561  pc 81109124  cpsr 80010010
02-08 10:36:32.306: INFO/DEBUG(1261):          #00  pc 00009124  /system/lib/libfmradio_jni.so
02-08 10:36:32.306: INFO/DEBUG(1261):          #01  pc 0001255c  /system/lib/libfmradio_jni.so
02-08 10:36:32.306: INFO/DEBUG(1261):          #02  pc 0000c93e  /system/lib/libfmradio_jni.so
02-08 10:36:32.316: INFO/DEBUG(1261):          #03  pc 0000ae14  /system/lib/libfmradio_jni.so
02-08 10:36:32.316: INFO/DEBUG(1261):          #04  pc 00008a72  /system/lib/libfmradio_jni.so
02-08 10:36:32.316: INFO/DEBUG(1261):          #05  pc 00006c22  /system/lib/libfmradio_jni.so
02-08 10:36:32.326: INFO/DEBUG(1261):          #06  pc 00004d92  /system/lib/libfmradio_jni.so
02-08 10:36:32.326: INFO/DEBUG(1261):          #07  pc 0000e434  /system/lib/libdvm.so

通常编译Android代码时,出于size的考虑,剔除了符号信息。但我们可以使用编译时生成的二进制文件(转注:含有符号信息的文件,通常位于./out/target/product/[PROJECT]/symbols/system/lib/目录),获取其符号信息,从而得到调用堆栈:

$ ./prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-addr2line -f -e ./out/target/product/[PROJECT]/symbols/system/lib/libfmradio_jni.so 0000960c 000129ec 0000cdce 0000b2a4 00009496 00008258 000054f6
non_congruent
bionic/libc/arch-arm/bionic/memcpy.S:229
__sfvwrite
bionic/libc/stdio/fvwrite.c:151
__sprint
bionic/libc/stdio/vfprintf.c:71
printf
bionic/libc/stdio/printf.c:44
fm_std_Power
frameworks/base/fmradio/jni/http://www.cnblogs.com/http://www.cnblogs.com/external/.../fmradio/fmapi/fm_std_api.c:144
_Z11fm_SwitchOnv
frameworks/base/fmradio/jni/fm_functions.cpp:95
radio_SwitchOn
frameworks/base/fmradio/jni/native.cpp:41
yang@Ubuntu$ c++filt _Z11fm_SwitchOnv
fm_SwitchOn()

通过这种方式,即可得到调用堆栈信息,找出问题所在。


-------------------------------------------------------------------------------------------------------------------
方法二
-------------------------------------------------------------------------------------------------------------------
cat logcat_3.log | ndk-stack -sym ~/[SOURCE-DIR]/out/target/product/[PROJECT]/symbols/system/lib/


-------------------------------------------------------------------------------------------------------------------
方法三
-------------------------------------------------------------------------------------------------------------------
转自:http://www.cppblog.com/fwxjj/archive/2011/09/30/157242.aspx

google提供了一个python脚本,可以从 http://code.google.com/p/android-ndk-stacktrace-analyzer/ 下载这个python脚本,然后使用 
adb logcat -d > logfile 导出 crash 的log,
使用 arm-eabi-objdump (位于build/prebuilt/linux-x86/arm-eabi-4.2.1/bin下面)把so或exe转换成汇编代码,如:
arm-eabi-objdump -S mylib.so > mylib.asm,
然后使用脚本
python parse_stack.py <asm-file> <logcat-file>

posted @ 2012-05-18 15:16 IamEasy_Man 阅读(20) 评论(0) 编辑

2012年5月5日

【原创】ubuntu下收听香港电台和其他电台

在ubuntu 11.10安装SMPlayer

安装完毕之后,如果想收听什么电台在Terminal输入如下:

香港电台第二台

mplayer mms://202.177.192.111/radio2
广东电台音乐之星

mplayer mms://live.fm993.com.cn/musicfm 

 

电台收藏如下: 

***北京丶上海丶天津丶重庆*** 
mms://202.108.248.145/am603 北京电台首都生活 
mms://202.108.248.145/fm974 北京电台音乐广播 
mms://202.108.248.145/am774 北京电台外语广播 
mms://202.108.248.145/fm1006 北京电台新闻广播 
mms://202.108.248.145/am927 北京电台体育广播 
mms://202.108.248.145/fm1039 北京电台交通广播 
mms://202.108.248.145/fm1073 北京电台经济广播 
mms://listen1.bjradio.com.cn/cfm986 北京电台古典音乐 
mms://alive.bjradio.com.cn/fm1073 北京电台城市管理 
mms://listen1.bjradio.com.cn/cfm1043 北京电台文学影视 
mms://listen1.bjradio.com.cn/cfm970 北京电台通俗音乐 
mms://listen1.bjradio.com.cn/cfm994 北京电台北京教学 
mms://alive.bjradio.com.cn/fm876 北京电台文艺广播 
mms://listen1.bjradio.com.cn/cfm1051 北京电台戏曲曲艺 
mms://listen1.bjradio.com.cn/cfm1065 北京电台亚洲流行 
mms://listen1.bjradio.com.cn/cfm1075 北京电台轻音乐 
mms://listen1.bjradio.com.cn/DAB 北京电台 DAB广播 
http://www.stv.sh.cn/classic.asx 上海人民广播电台经典947 
http://www.stv.sh.cn/103.asx 上海人民广播电台魅力音乐103 
http://www.stv.sh.cn/990.asx 上海人民广播电台新闻频率 
http://www.stv.sh.cn/648.asx 上海人民广播电台交通频率 
http://www.stv.sh.cn/1045.asx 上海人民广播电台东广新闻 
http://www.stv.sh.cn/792.asx 上海人民广播电台都市792 
http://www.stv.sh.cn/popmusic.asx 上海人民广播电台动感101 
http://www.stv.sh.cn/977.asx 上海人民广播电台第一财经 
http://www.stv.sh.cn/977.asx 上海人民广播电台开心调频 
http://www.stv.sh.cn/1197.asx 上海人民广播电台海上戏剧 
mms://218.1.74.225/940 上海人民广播电台体育频率 
mms://61.136.19.228/live1 天津广播电台新闻频道 
mms://61.136.19.228/live2 天津广播电台音乐频道 
mms://61.136.19.228/live3 天津广播电台经济频道 
mms://61.136.19.228/live4 天津广播电台文艺频道 
mms://61.136.19.228/live5 天津广播电台交通频道 
mms://61.136.19.228/live6 天津广播电台生活频道 
mms://61.136.19.228/live7 天津广播电台滨海频道 
mms://61.136.19.228/live9 天津广播电台古典音乐频道 
mms://211.158.10.48/fm881 重庆音乐广播电台 

***香港丶台湾丶澳门*** 
mms://210.59.227.130/heart32k 台北真心之音电台 
mms://202.177.192.108/radio5 香港电台第5台 
mms://202.177.192.108/radio2 香港电台第2台 
mms://202.177.192.108/radio1 香港电台第1台 
mms://202.177.192.108/radio3 香港电台第3台(英语) 
mms://202.177.192.108/radio4 香港电台第4台(英语) 
rtsp://www.am873.net/encoder/news 海峡之声新闻时政频道 
http://metromedia.104metrofinance.com/LiveAM1044 新城采讯台(英语) 
mms://203.129.68.232/fmselect 新城财经台104 
mms://203.129.68.232/hit997 新城娱乐台 
mms://202.177.192.223/cr1 香港商业电台一台雷霆881 
mms://202.177.192.223/cr2 香港商业电台二台叱咤903 
mms://203.187.31.160/khkiss KISSRADIO 
mms://203.187.31.160/fm917 台北之音音乐电台 
mms://203.187.31.160/fm1077 台北之音都会台 
mms://media.family977.com.tw/live 台湾好家庭电台 
mms://61.218.197.178:8080 台湾云嘉广播电台 
mms://media.iwant-in.net/pop 台湾银河流行音乐台 
mms://61.220.226.218:8080 台湾桃园广播电台 
mms://61.221.98.46:8080 台湾省都广播电台 
mms://203.71.144.133:8080 教育广播-台东台 
mms://203.71.142.50:1029 教育广播-高雄台 
mms://220.132.146.146:8080 新竹劳工之声客家电台 
mms://202.175.80.10/liveaudio 澳门电台 

***广东丶广西丶福建*** 
mms://210.53.201.134:8080 新会电台(广东江门) 
mms://211.156.183.154:8080/radio 江门电台 
mms://61.145.112.81/fm914 广东卫星广播电台 
mms://211.96.13.249/pub 花都广播电台 
mms://221.4.151.102:1427 高明电台 
mms://fm1047.heshan.net/fm1047 江门鹤山电台 
mms://210.53.200.4/tsradio 台山人民广播电台 
mms://www.gdsgbc.com/live_sg 韶关人广普通话频道 
mms://www.gdsgbc.com/live_bj 韶关人广广州话频道 
mms://61.131.4.158/fm913_128k 福建电台音乐广播 
rtsp://218.16.123.9/broadcast/blivefm936 广东电台南方生活广播 

***浙江丶江苏*** 
mms://video3.zjol.com.cn/am810 浙江人广新闻综合频道 
mms://video3.zjol.com.cn/fm95 浙江经济台 
mms://video3.zjol.com.cn/voc107/voc107.asx 浙江城市之声 
mms://218.108.20.172/audio_live1 杭州新闻综合 
mms://218.108.20.172/audio_live2 杭州西湖之声广播电台 
mms://218.108.20.172/audio_live3 杭州经济之声广播电台 
mms://218.108.20.172/audio_fm89 杭州广播电台fm89 
mms://222.46.65.21/live 温州人广新闻综合 
mms://222.46.65.22/live 温州人广经济交通 
mms://222.46.65.23/live 温州人广音乐之声 
mms://av.zhoushan.cn/Radio 舟山人民广播电台 
mms://210.22.209.202/1 镇江人民广播电台994新闻综合频率 
mms://211.140.147.252/1 金华新闻综合 
mms://211.140.147.252/2 金华经济频道 
mms://211.140.147.252/3 金华交通音乐 
mms://media.hz66.com/diantai 湖州人民广播 
mms://61.155.11.22/njyyt 南京音乐频道 
mms://online.njbs.com.cn/njjtt 南京交通台 
mms://online.njbs.com.cn/njxwt 南京新闻台 
mms://online.njbs.com.cn/njjjt2 南京体育台 
mms://online.njbs.com.cn/njjjt1 南京经济台 
mms://vod.jsgd.com.cn/audio1.jsgd 江苏人民广播电台综合频率 
mms://vod.jsgd.com.cn/audio4.jsgd 江苏人民广播电台音乐频率 
mms://vod.jsgd.com.cn/audio3.jsgd 江苏人民广播电台文艺频率 
mms://vod.jsgd.com.cn/audio2.jsgd 江苏人民广播电台经济频率 
mms://vod.jsgd.com.cn/audio6.jsgd 江苏人民广播电台金陵之声 

***云南丶湖南丶湖北*** 
mms://220.163.44.116:8080 云南音乐台 
mms://www.radiokm.com/live1 昆明人民广播电台阳光调频 
mms://www.radiokm.com/live2 昆明人民广播电台都市调频 
mms://video.rednet.com.cn/918 湖南人民广播电台交通频道 
mms://video.rednet.com.cn/975 湖南人民广播电台文艺频道 
mms://video.rednet.com.cn/1032 湖南人民广播电台新闻频道 
mms://video.rednet.com.cn/1061 长沙人民广播电台音乐频道 
mms://media.csonline.com.cn/fm105 长沙人民广播电台星沙之声 
mms://220.202.29.39:8280 宜昌人民广播电台新闻台 
mms://220.202.29.39:8180 宜昌人民广播电台交通台 
mms://220.202.29.39:8380 宜昌人民广播电台都市台 
mms://219.138.45.181/jiaotong 襄樊交通音乐频率 
mms://219.138.45.181/xinwen 襄樊新闻频率 
mms://219.138.45.181/wenyi 襄樊文艺频率 
mms://218.200.149.203/fm 黄石交通音乐台 
mms://listen.sycatv.net:8080/.asf 十堰音乐 

***陕西丶河南丶河北*** 
mms://61.185.214.171/fm931 西安音乐 
mms://219.144.240.171/audio1 陕西人广新闻综合台 
mms://219.144.240.171/audio2 陕西人民广播文艺台 
mms://219.144.240.171/audio4 陕西人民广播交通台 
mms://219.144.240.171/audio5 陕西人民广播农村台 
mms://219.144.240.171/audio6 陕西人民广播音乐台 
mms://219.144.240.171/audio7 陕西人民广播生活台 
mms://219.144.240.171/audio3 陕西人民广播财富台 
mms://audio.hndt.com/jtgb 河南人广交通广播 
mms://audio.hndt.com/wygb 河南人广文艺广播 
mms://audio.hndt.com/nygb 河南人广农业广播 
mms://audio.hndt.com/jjgb 河南人广经济广播 
mms://audio.hndt.com/yygb 河南人广音乐广播 
mms://audio.hndt.com/fm90 河南人广文艺调频 
mms://fm926.net/fm926 河南星河之声 
mms://218.28.9.116/新闻广播 郑州新闻广播 
mms://218.28.9.116/音乐广播 郑州音乐广播 
mms://218.28.9.116/经济广播 郑州经济广播 
mms://218.28.9.116/都市广播 郑州都市广播 
mms://218.28.9.116/文艺广播 郑州文艺广播 
mms://218.28.9.116/城市广播 郑州城市广播 
mms://www.sqradio.com/商丘电台都市频道927khz 
mms://www.sqradio.com/商丘电台交通频道 
mms://www.sqradio.com/商丘电台新闻频道729khz 
mms://61.134.39.94:4185/汉中音乐台 
mms://www.lfradio.com:8080/1003 廊坊广播电台交通长书频道 

***江西丶安徽丶山东*** 
mms://movie.jxgdw.com/jswjxdt 江西人民广播电台新闻综合频率 
mms://movie.jxgdw.com/jswjjsh 江西人民广播电台生活经济频率 
mms://movie.jxgdw.com/jswwyyy 江西人民广播电台文艺音乐频率 
mms://movie.jxgdw.com/jswxxxxjt 江西人民广播电台信息交通频率 
mms://live.ahradio.com.cn/livemusic 安徽音乐电台 
mms://218.106.82.110/audio3 合肥交通广播电台 
mms://218.106.82.110/audio1 合肥人民广播电台 
mms://218.106.82.110/audio2 合肥文艺广播电台 
mms://210.77.193.6/music1 济南Music887 
mms://61.156.28.17/jingji 济宁经济广播电台 
mms://61.156.28.17/wenyi 济宁交通文艺台 
mms://mms.zhaowo.com/wfradio 潍坊交通频道 
mmst://61.156.23.102/rxinwen 威海广播新闻频道 
mms://movie.top86.com/qdgb 青岛人民广播电台 
mms://av1.jiaodong.net/radio3 烟台交通频道 
mms://av1.jiaodong.net/radio2 烟台音乐频道 
mms://av1.jiaodong.net/radio1 烟台新闻频道 
rtsp://60.216.51.155/encoder/xinwen 山东广播新闻频道 
rtsp://60.216.51.155/encoder/jingji 山东广播经济频道 
rtsp://60.216.51.155/encoder/wenyi 山东广播文艺频道 
rtsp://60.216.51.155/encoder/shenghuo 山东广播生活频道 
rtsp://60.216.51.155/encoder/jiaotong 山东广播交通频道 
rtsp://60.216.51.155/encoder/diliu 山东广播第六频道 
rtsp://60.216.51.155/encoder/xiuxianyinyue 山东广播数字休闲音乐频道 
rtsp://60.216.51.155/encoder/yinyue 山东广播音乐频道 

***四川丶宁夏丶东北丶新疆*** 
mms://61.133.211.228:1113/宁夏人民广播电台新闻综合频率 
mms://61.133.211.228:4512/宁夏人民广播电台交通音乐频率 
mms://61.133.211.228:4575/宁夏人民广播电台经济频率 
mms://61.133.211.228:4619/宁夏都市生活频率 
mms://media.newssc.org/fm94 四川人民广播电台经济频率FM94 
mms://media.newssc.org/fm894 四川人民广播电台经济频率FM89.4 
mms://broadcast.ucatv.com.cn/station5 乌鲁木齐生活 
mms://broadcast.ucatv.com.cn/station6 乌鲁木齐维语 
mms://broadcast.ucatv.com.cn/station3 乌鲁木齐旅游 
mms://broadcast.ucatv.com.cn/station1 乌鲁木齐文艺 
mms://broadcast.ucatv.com.cn/station2 乌鲁木齐新闻 
mms://broadcast.ucatv.com.cn/station4 乌鲁木齐音乐 
mms://59.44.238.2:6999/live 辽北广播辽北广播 

***网络音乐*** 
mms://vstream.sina.com.cn/900 新浪音乐台 
mms://pub.qmoon.net:8009/audio 北京广播网青檬网络电台 
http://mediaserver.iwant-in.net/player/ ... GFiles=pop 银河网络电台 
mms://live.mop.com/mopradio 猫扑网络电台 
mms://zjlive1.45doo.com/live 45度网络电台 
rtsp://radio.21cn.com/id/live2.rm 21CN网络电台(国) 



***中央人民广播电台*** 
mms://211.89.225.101/live1中央人民广播电台中国之声 
mms://211.89.225.101/live2中央人民广播电台经济之声 
mms://211.89.225.101/live3中央人民广播电台音乐之声 
mms://211.89.225.101/live4中央人民广播电台都市之声 
mms://211.89.225.101/live5中央人民广播电台中华之声 
mms://211.89.225.101/live6中央人民广播电台神州之声 
mms://211.89.225.101/live7_p中央人民广播电台华夏普通 
mms://211.89.225.101/live7_s中央人民广播电台华夏双语 
mms://211.89.225.101/live8中央人民广播电台民族之声 
mms://211.89.225.101/live9中央人民广播电台文艺之声 


***国外电台*** 
http://am990.co.nz/2004/ram/4962-1.asx 新西兰BBC中文台 
http://www.am990.co.nz/2004/ram/mm.asx 新西兰BBC中文台午间新闻 
http://www.am990.co.nz/2004/ram/mc.asx 新西兰BBC中文台午间新闻[粤] 
http://www.am990.co.nz/2004/ram/em.asx 新西兰BBC中文台晚间新闻 
http://www.am990.co.nz/2004/ram/ec.asx 新西兰BBC中文台晚间新闻[粤] 
http://202.172.226.198/RadioLive/FM933.asx 新加坡(醉心Y.e.s 93.3FM) 
http://202.172.226.198/RadioLive/FM950.asx 新加坡(Class 95FM)  
http://202.172.226.198/RadioLive/FM972.asx 新加坡(最爱Love 97.2FM)  
http://202.172.226.198/RadioLive/FM968.asx 新加坡(Oli 96.8FM)  
http://202.172.226.198/RadioLive/FM987.asx 新加坡(Perfect 10 FM98.7) 
http://202.172.226.198/RadioLive/FM897.asx 新加坡(Ria 89.7FM)  
http://202.172.226.198/RadioLive/FM942.asx 新加坡(Warna 94.2FM)  
http://media.netroasia.com/power98/power98.asx 新加坡(Power 98FM) 
http://media.netroasia.com/power98/power98.asx 新加坡(WKRZ 91.3FM) 
http://media.netroasia.com/ufm1003/ufm1003.asx 新加坡(UFM100.3) 
mms://enmms.chinabroadcast.cn/am846 中国国际广播电台 am846 
mms://enmms.chinabroadcast.cn/am1008 中国国际广播电台 am1008 
mms://enmms.chinabroadcast.cn/fm91.5 中国国际广播电台 fm91.5 
mms://chbcnews.com:1250 中国华艺广播 
mms://www.fm926.net/fm926 中原流行音乐电台 
mms://216.18.70.242/AM1470N 加拿大温哥华AM1470 
mms://vruk.wm.llnwd.net/vruk_vr_lo Virgin Radio 
mms://media4.abc.net.au/raflp 音乐澳洲广播电台 
mms://a1234.l663344172.c6633.e.lm.akama ... ctor:44172 法国国际广播电台 
mms://203.117.6.22/rsi-mandarin (RSI) 中文 
mms://stream.eseenet.com/fm889 加拿大中文电台AM889 
mms://216.18.70.242/fm961n 温哥华fm96.1 
mms://living.chinabroadcast.cn/inet INetRadio 
mms://enmms.chinabroadcast.cn/am846 CRIenglish FM846 
mms://enmms.chinabroadcast.cn/am1008 CRIenglish am1008 
mms://enmms.chinabroadcast.cn/fm91.5 5CRIenglish fm91.5 
mms://enmms.chinabroadcast.cn/roundtheclock CRIenglish roundtheclock 
rtsp://a1702.l211020409.c2110.g.lr.akam ... ctor:23641 囗囗囗囗(不用代理) 
rtsp://a247.r.akareal.net/live/D/247/21 ... ctor:44464 美国之音VOANews 
http://www.abc.net.au/streaming.ra.ram 澳州广播英文电台 
http://av.sina.com/crn/show/crnlive.rpm 纽约中国广播网 
http://tbn.twnet.com/live-cav.ram 纽约侨声综合台 
rtsp://208.46.156.10/cav/news3.rm 纽约侨声新闻台 
http://208.138.159.49/am1300.asx 中文广播电台 
http://208.138.159.50/am1430.asx 华语广播电台 
http://www.abc.net.au/streaming/newsradio.ram ABC NewsRadio(Real) 
http://radiostorm.com/alt128.pls Alternative 
http://www.radiostorm.com/classic128.pls Classic Rock 
pnm://video.c-span.org/encoder/wcsp.ra C-SPAN 
http://www.bloomberg.com/streams/audio/ ... synd=msoft Bloomberg 
http://www.di.fm/mp3/classical40k.pls MostlyClassical.com(40k) 
http://www.di.fm/mp3/classical56k.pls MostlyClassical.com(56k) 
http://www.di.fm/mp3/classical128k.pls MostlyClassical.com(128k) 
http://www.kbs.co.kr/onair/L_1FM.asx 韩国KBS1FM 
http://www.kbs.co.kr/onair/L-2FM.asx 韩国KBS2FM 
http://www.kbs.co.kr/onair/L-1RADIO.asx 韩国KBS1R 
http://www.kbs.co.kr/onair/L-2RADIO.asx 韩国KBS2R 
mms://210.124.186.162/kfm 京畿放送FM99.9

 

posted @ 2012-05-05 07:53 IamEasy_Man 阅读(11) 评论(0) 编辑

2012年4月28日

【摘录】Ics4.0如何去除系统的状态栏

通常系统状态栏的修改在framework目录下的systemui这个文件中 

 SystemUIService.java   onCreate 函数

修改 for (int i=0; i<N; i++) {

      Class cl = chooseClass(SERVICES[i]); 

 

修改为: for (int i=1; i<N; i++) {

      Class cl = chooseClass(SERVICES[i]);  

 

这样就不会加载statusbar server

posted @ 2012-04-28 12:27 IamEasy_Man 阅读(7) 评论(0) 编辑

2012年4月26日

【摘录】How to compile mame in Ubuntu 10.04 Lucid Lynx

 http://maxolasersquad.blogspot.com/2010/12/how-to-compile-mame-in-ubuntu-1004.html

 

Using the following instructions you should be able to compile Mame on Ubuntu 10.04 Lucid Lynx, though it should also work in most any other version of Ubuntu too.

  1. Download the latest source from http://mamedev.org/release.html Grab the .zip version. The following command will grab the latest source as of the time I wrote this tutorial.
    wget http://mamedev.org/downloader.php?file=releases/mame0140s.zip --user-agent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6" -O mame_source.zip
    Here we change the user/agent string, because the server is set to prevent robots, like wget, from programmatically downloading the file.
  2. Unzip the file, and then unzip that file. Place it anywhere you like, perhaps your home directory.
    mkdir mame
    unzip mame_source.zip
    unzip mame.zip -d mame
    rm mame.zip
  3. Next we install all the libraries and dependencies necessary to build mame.
    sudo aptitude install build-essential libgtk2.0-dev libgnome2-dev libsdl1.2-dev
  4. Finally, lets get to building it.
    cd mame
    make
  5. Let's setup a rom folder and get some roms.
    mkdir roms
    cd roms
    wget http://mamedev.org/roms/sidetrac/sidetrac.zip --user-agent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"
  6. Now that we have legally obtained an arcade ROM, let's play it!
    cd ..

Once you know what libraries to install, compiling Mame from source is quite easy in Ubuntu. Drop me a line in the comments if this is helpful, or if you run into any problems or have any suggestions.

posted @ 2012-04-26 17:40 IamEasy_Man 阅读(6) 评论(0) 编辑

2012年4月7日

【摘录】Android SDK更新以及ADT更新出现问题的解决办法

问题描述

使用SDK Manager更新时出现问题
Failed to fetch URLhttps://dl-ssl.google.com/android/repository/repository-6.xml,reason: Connection to https://dl-ssl.google.com refused
Failed to fetch URLhttp://dl-ssl.google.com/android/repository/addons_list-1.xml,reason: Connection to http://dl-ssl.google.com refused
Failed to fetch URLhttps://dl-ssl.google.com/android/repository/addons_list-1.xml,reason: hostname in certificate didn't match:<dl-ssl.google.com> !=<www.google.com>
更新ADT时无法解析https://dl-ssl.google.com/android/eclipse


解决办法

由于某些众所周知又无法理解的原因,我们大陆使用Google的服务会出现种种问题,譬如Android开发也会出现阻碍。不过首先要说明的是一般情况下使用SDKManager更新或者更新Eclipse的ADT插件是没有问题的,我以前也能正常更新,但是昨天不知道节点抽什么风,压根无法连接服务器,出现了上边的种种问题,下面说一下如果网络抽风的话应该如何解决问题。

第一种方法一劳永逸,直接配置VPN,但是现在想找个速度快又稳定还免费的VPN实在不易,尤其是更新SDK,以几kb/s的速度一个文件需要400多分钟,所以也就放弃了VPN。

另一种方法是使用http协议而不是https协议,因为https协议进行了加密处理,大陆因为无法审查,直接封死,而http协议则进行过滤处理,如果不访问乱七八糟的东西,更新个SDK还是没问题的。
在SDK Manager下Tools->Options打开了SDKManager的Settings,选中“Force https://… sources to be fetched usinghttp://…”,强制使用http协议。
而在更新ADT插件的时候则使用网址http://dl-ssl.google.com/android/eclipse,而不是https://dl-ssl.google.com/android/eclipse,这个在官方开发文档里也有介绍。
但是昨天的情况就是使用http协议也无法访问。

再说一个比较麻烦的方法,就是直接打开
https://dl-ssl.google.com/android/repository/addons_list.xml
https://dl-ssl.google.com/android/repository/repository.xml
https://dl-ssl.google.com/android/repository/addon.xml
这几个文件,找到你要下载的文件名,直接用迅雷下载,ADT可以直接在官网下载ADT包进行安装。具体方法自己搜索。

最好的方法还是改hosts文件的方法,更新速度较快。Windows在C:\WINDOWS\system32\drivers\etc目录下,Linux用户打开/etc/hosts文件。
打开文件后添加以下内容。

#Google主页
203.208.46.146 www.google.com
#这行是为了方便打开Android开发官网 现在好像不翻墙也可以打开
74.125.113.121 developer.android.com
#更新的内容从以下地址下载
203.208.46.146 dl.google.com
203.208.46.146 dl-ssl.google.com

添加以上的网址,再选用http协议,就可以正常的进行更新了。
或者也可以什么都不做,过上一两天可能会恢复正常。

下边贴上使用Google各种服务在修改hosts文件时需要添加的内容。



#Google Service
#Chrome 网上应用
203.208.46.146 chrome.google.com
203.208.46.146 clients0.google.com
203.208.46.146 clients1.google.com
203.208.46.146 clients2.google.com
203.208.46.146 clients3.google.com
203.208.46.146 clients4.google.com
203.208.46.146 www.googleusercontent.com
203.208.46.146 lh0.googleusercontent.com
203.208.46.146 lh1.googleusercontent.com
203.208.46.146 lh2.googleusercontent.com
203.208.46.146 lh3.googleusercontent.com
203.208.46.146 lh4.googleusercontent.com
203.208.46.146 lh5.googleusercontent.com
203.208.46.146 lh6.googleusercontent.com
203.208.46.146 clients1.googleusercontent.com
203.208.46.146 clients2.googleusercontent.com

#网页快照
203.208.46.146 webcache.googleusercontent.com

#Google SSL
203.208.46.146 encrypted.google.com
203.208.46.146 encrypted.google.com.hk

#Google Docs
203.208.46.146 docs.google.com
203.208.46.146 docs0.google.com
203.208.46.146 docs1.google.com
203.208.46.146 docs2.google.com
203.208.46.146 docs3.google.com
203.208.46.146 spreadsheets.google.com
203.208.46.146 spreadsheets0.google.com
203.208.46.146 spreadsheets1.google.com
203.208.46.146 spreadsheets2.google.com
203.208.46.146 spreadsheets3.google.com

#Gmail
203.208.46.146 mail.google.com
203.208.46.146 chatenabled.mail.google.com #Gmail中Gtalk聊天服务

#Google 搜索
203.208.46.146 www.google.com

#Google preview
203.208.46.146 www.googlepreview.com

#Google 翻译
203.208.46.146 translate.google.com
203.208.46.146 translate.googleapis.com

#Google 搜索建议(IE9)
203.208.46.146 clients5.google.com

#Google Code
203.208.46.146 code.google.com

#Picasa 网络相册
203.208.46.146 picasaweb.google.com
203.208.46.146 lh0.ggpht.com
203.208.46.146 lh1.ggpht.com
203.208.46.146 lh2.ggpht.com
203.208.46.146 lh3.ggpht.com
203.208.46.146 lh4.ggpht.com
203.208.46.146 lh5.ggpht.com
203.208.46.146 lh6.ggpht.com
203.208.46.146 lh7.ggpht.com
203.208.46.146 lh8.ggpht.com
203.208.46.146 lh8.ggpht.com
203.208.46.146 lh9.ggpht.com
203.208.46.146 lh6.google.com

#Google 个人资料
203.208.46.146 profiles.google.com
203.208.46.146 browsersync.google.com

#Google+
203.208.46.146 talkgadget.google.com #Google+中的聊天服务
203.208.46.146 ssl.gstatic.com
203.208.46.146 images-pos-opensocial.googleusercontent.com
203.208.46.146 images1-focus-opensocial.googleusercontent.com
203.208.46.146 images2-focus-opensocial.googleusercontent.com
203.208.46.146 images3-focus-opensocial.googleusercontent.com
203.208.46.146 images4-focus-opensocial.googleusercontent.com
203.208.46.146 images5-focus-opensocial.googleusercontent.com
203.208.46.146 images6-focus-opensocial.googleusercontent.com
203.208.46.146 plus.google.com

#Download 下载
203.208.46.146 dl.google.com
203.208.46.146 dl-ssl.google.com

#Groups
203.208.46.146 groups.google.com

#Google URL Shortener
203.208.46.146 goo.gl

#Google App Engine
203.208.46.146 appengine.google.com

#Android Developer

74.125.113.121 developer.android.com


我试了最后一个办法,即修改hosts文件的办法,立即解决了我的问题,很不错,转了,希望有同样麻烦的朋友能够用得着。

转自:http://blog.sina.com.cn/s/blog_4a94a0db0100y4h7.html


posted @ 2012-04-07 17:28 IamEasy_Man 阅读(19) 评论(1) 编辑

2011年11月28日

【摘录】配置ubuntu server samba将linux目录映射到WINDOWS驱动器

摘要: 安装sambasudo suapt-get install samba system-config-samba samba-client samba-common创建用户和共享目录(用windows共享访问)groupadd wwwuseradd -g www wwwmkdir /var/www/webdevchown -R www:www /var/www/webdevchmod -R 777 /var/www/webdev创建samba配置文件cat /etc/passwd | mksmbpasswd > /etc/samba/smbpasswdmv /etc/samba/smb.c阅读全文

posted @ 2011-11-28 11:38 IamEasy_Man 阅读(34) 评论(0) 编辑

2011年11月25日

【摘录】shell脚本条件语句

摘要: 第 7 章 条件语句目录7.1. 介绍if7.1.1. 概要7.1.2. if的简单应用7.2. 更多if的高级使用方法7.2.1. if/then/else结构7.2.2. if/then/elif/else结构7.2.3. if嵌套语句7.2.4. 布尔操作7.2.5. 使用exit语句和if7.3. 使用case语句7.3.1. 简单的条件7.3.2. 初始脚本例子7.4. 总结7.5. 练习摘要本章我们会讨论在Bash脚本中使用条件,包含以下几个话题:if 语句使用命令的退出状态比较和测试输入和文件if/then/else 结构if/then/elif/else 结构使用和测试位置参数阅读全文

posted @ 2011-11-25 22:45 IamEasy_Man 阅读(16) 评论(0) 编辑

2011年11月17日

【摘录】Android.mk添加第三方jar或so库到apk

摘要: 一、编译一个简单的APK LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS)# Build all java files in the java subdirectory LOCAL_SRC_FILES := $(call all-subdir-java-files)# Name of the APK to buildLOCAL_PACKAGE_NAME:= LocalPackage# Tell it to build an APK include $(BUILD_PACKAGE)二、编译一个依赖静态.jar文件的APK LOCAL_PATH 阅读全文

posted @ 2011-11-17 23:42 IamEasy_Man 阅读(89) 评论(0) 编辑

2011年11月15日

【摘录】Android 重新编译资源文件

摘要: http://blog.sina.com.cn/s/blog_6e15a6010100mm26.html在开发过程中,尤其是Framework相关开发时,有时候需要重新编译资源文件.编译顺序和注意事项如下:1,资源文件位置:frameworks/base/core/res2,编译后生成的文件:framework-res.apk 另外com.android.internal.R会更新这个R.java所在目录为/out/target/common/R/com/android/internal.3,编译资源后,必须重新编译framework.jar.4,如果在frameworks/base/core阅读全文

posted @ 2011-11-15 17:19 IamEasy_Man 阅读(51) 评论(0) 编辑

2011年10月15日

/boot目录空间不足

摘要: 提示/boot目录空间不足,查了一些资料,最后把久的内核给卸载得以解决。 1.首先查看自己使用的内核 lxz@lxz-pc:~$ uname -a Linux lxz-pc 2.6.35-25-generic #44-Ubuntu SMP Fri Jan 21 17:40:48 UTC 2011 i686 GNU/Linux 2.然后查看自己boot目录,选择需要卸载的版本 lxz@lxz-pc:~$ cd /boot lxz@lxz-pc:/boot$ ls -l 总计 35125 -rw-r--r-- 1 root root 705861 2011-01-22 06:04 abi...阅读全文

posted @ 2011-10-15 14:16 IamEasy_Man 阅读(14) 评论(0) 编辑

2011年8月11日

【摘录】设置layouy背景图透明度

摘要: View v = findViewById(R.id.content);//找到你要设透明背景的layout 的idv.getBackground().setAlpha(100);//0~255透明度值阅读全文

posted @ 2011-08-11 15:10 IamEasy_Man 阅读(7) 评论(0) 编辑

2011年8月10日

【摘录】汇编文件后缀 .s 与 .S

摘要: 一、大小写后缀的区别.s汇编语言源程序;汇编.S汇编语言源程序;预处理,汇编小写的s文件,在后期阶段不在进行预处理操作,所以我们不能在这里面写预处理的语句在里面大写的S文件,还会进行预处理、汇编等操作,所以我们可以在这里面加入预处理的命令二、编译的相关流程预处理(Pre-Processing)-->编译(Compiling)-->汇编(Assembling)-->链接(Linking)1、预处理器根据以字符#开头的命令(directives),修改原始的C程序这个阶段并不会去检查代码的错误,只会把#的语句转成C代码[gan@localhost gcc]# gcc E hell阅读全文

posted @ 2011-08-10 21:32 IamEasy_Man 阅读(76) 评论(0) 编辑

2011年8月9日

【摘录】横竖屏切换

摘要: http://www.cnblogs.com/hll2008/archive/2011/01/03/1924952.html为了实现横竖屏切换显示,背景图的显示采用代码进行控制显示,首先用如下方法获取当前手机是横屏还是竖屏:代码//获取屏幕方向publicstaticintScreenOrient(Activityactivity){intorient=activity.getRequestedOrientation();if(orient!=ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE&&orient!=ActivityInfo.SCRE阅读全文

posted @ 2011-08-09 11:57 IamEasy_Man 阅读(25) 评论(0) 编辑

2011年8月6日

【摘录】FrameLayout 的絕對座標設定方法

摘要: FrameLayout 裡面的元素,一定要設android:layout_height 以及 android:layout_width因為你只是想放元件而已,所以這兩個東西都可以設成 wrap_content就可以了那麼我們該如何定位呢 ?我們可以用 layout_gravity 來定位例如 layout_gravity=”left”layout_gravity=”center_vertical”layout_gravity=”center_vertical|right” 等等這樣子FrameLayout的children 就會根據這這個gravity ,自動移向FrameLayout的 左邊阅读全文

posted @ 2011-08-06 14:04 IamEasy_Man 阅读(65) 评论(0) 编辑

2011年8月5日

【摘录】Android.mk编译APK范例

摘要: 以下仅是使用Android.mk编译APK程序的一些范例。如果你想了解Android.mk的更多内容请参考《Android.mk》一、编译一个简单的APK LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS)# Build all java files in the java subdirectory LOCAL_SRC_FILES := $(call all-subdir-java-files)# Name of the APK to buildLOCAL_PACKAGE_NAME:= LocalPackage# Tell it to buil阅读全文

posted @ 2011-08-05 10:19 IamEasy_Man 阅读(239) 评论(0) 编辑

【摘录】apk文件编译到系统文件中的方法

摘要: 把第三方或自己开发的apk文件编译到系统文件(system.img)中的方法:1(1)源码编译后,把apk拷贝到out\target\product\generic\system\app中。 (2) 执行命令make snod , 把添加的spk编到system.img 中 缺点:执行make clean 后,再次make 完毕需要重新执行上面操作。2"方法一"的改进。 (1) 新建一个文件夹目录,用来存放apk文件 mkdir packages/apps/Prebuilt_apps cd packages/apps/Prebuilt_apps 在Prebuilt_apps阅读全文

posted @ 2011-08-05 10:16 IamEasy_Man 阅读(134) 评论(0) 编辑

2011年8月4日

【摘录】正确理解线程等待和释放(wait/notify)

摘要: Java代码/***线程A:循环50次后等待并放弃锁,让线程B执行。*/classThreadAextendsThread{//线程同步的公共数据区Objectoa=null;ThreadA(Objecto){this.oa=o;}//线程A执行逻辑publicvoidrun(){//线程同步区域,需要申请公共数据的锁synchronized(oa){System.out.println("ThreadAisrunning......");for(inti=0;i<100;i++){System.out.println("ThreadAvalueis&quo阅读全文

posted @ 2011-08-04 15:02 IamEasy_Man 阅读(49) 评论(0) 编辑

2011年8月3日

【摘录】Android的线程使用来更新UI----Thread、Handler、Looper、TimerTask等

摘要: http://www.cnblogs.com/playing/archive/2011/03/24/1993583.html方法一:(java习惯,在android不推荐使用)刚刚开始接触android线程编程的时候,习惯好像java一样,试图用下面的代码解决问题new Thread( new Runnable() { public void run() { myView.invalidate(); } }).start();可以实现功能,刷新UI界面。但是这样是不行的,因为它违背了单线程模型:Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。方法二:(Thread+H阅读全文

posted @ 2011-08-03 20:54 IamEasy_Man 阅读(61) 评论(0) 编辑

2011年7月30日

【摘录】Intent 用法大公開

摘要: http://jjnnykimo.pixnet.net/blog/post/34544921Intent 應該算是 Andorid 中特有的東西。你可以在 Intent 中,指定要應用程式執行的動作 (view, edit, dial),以及應用程式執行該動作時,所需要的資料。都指定好後,只要透過 startActivity(),Android 系統會自動尋找,最符合你指定要求的應用程式,並喚起執行該應用程式。 不過,這部份的文件還不是很完整。Reference of Available Intents 有列一些。底下是我收集的一些用法,分享出來給有需要的你。有些還沒有實際驗證過,如果發現有錯阅读全文

posted @ 2011-07-30 15:29 IamEasy_Man 阅读(26) 评论(0) 编辑

2011年7月29日

【摘录】Android实现静默安装APK的两种方法

摘要: 这段时间很忙,少来发帖了,今天再来爆一个.... Android上的静默安装似乎是个很诱人的功能,好多人都问这个问题。今天分享下实现静默安装的两种方法,但当看完这篇文章后,仍会让一些人失望滴。 Android把所有的Permission依据其潜在风险(属性名为protectionLevel )划分为四个等级,即"normal "、 "dangerous "、 "signature "、 "signatureOrSystem "。 INSTALL_PACKAGES属于后两者。让我们看一下官方文档对后两类的描述吧。 &阅读全文

posted @ 2011-07-29 17:57 IamEasy_Man 阅读(86) 评论(0) 编辑

仅列出标题  下一页

导航

统计