Archive

Archive for the ‘Android’ Category

Mac mkyaffs2image binary Re: HOWTO: Roll Your Own Firmware

April 10th, 2013 No comments

Here’s a Mac (intel 32bit snow leopard) built binary of mkyaffs2image

http://www.multiupload.com/DD76DX276D

I have only tested it so far that it runs. Use at your own peril.

Based on the source from http://code.google.com/p/fatplus/downloads/list .

Got it to compile by adding the following to devextras.h

#if defined(__APPLE__) || defined (__FreeBSD__)
typedef long long loff_t;
#endif

No luck on finding or building a mac binary of unyaffs so far. However, a Windows binary can be found at http://boomtopper.blogspot.com/2009/10/unyaffs-windows-binary.html

From: http://forums.seagate.com/t5/FreeAgent-Theater-and-GoFlexTV/HOWTO-Roll-Your-Own-Firmware/m-p/48669

–EOF–

/proc/net/tcp文件网络状态

January 21st, 2013 No comments

/proc/net/tcp或/proc/net/tcp6 文件,这里记录的是ipv4/ipv6下所有tcp连接的情况,包括下列数值:
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 0100007F:13AD 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 521 1 dce53a80 300 0 0 2 -1
最主要的,就是local_address本地地址:端口、rem_address远程地址:端口、st连接状态。
注1:文件中都是用的16进制,所以HTTP的80端口记录为0050。
注2:状态码对应如下
00 “ERROR_STATUS”,
01 “TCP_ESTABLISHED”,
02 “TCP_SYN_SENT”,
03 “TCP_SYN_RECV”,
04 “TCP_FIN_WAIT1″,
05 “TCP_FIN_WAIT2″,
06 “TCP_TIME_WAIT”,
07 “TCP_CLOSE”,
08 “TCP_CLOSE_WAIT”,
09 “TCP_LAST_ACK”,
0A “TCP_LISTEN”,
0B “TCP_CLOSING”,

–EOF–

Categories: Android, OpenSource, Tech.Notes Tags: , , ,

Script for pack mtk’s boot/recovery image

December 20th, 2012 No comments

From: http://www.beautyorange.com/2011/10/script-for-pack-mtks-bootrecovery-image/

mt6573-recovery

1. pack-mtk-boot.sh

1
2
3
4
5
6
7
8
9
cd rmdisk
find . | cpio -o -H newc | gzip > ../new_ram
cd ..
python cksum.py new_ram ram_header
mv ram_header.alt ram_header
dd if=./new_ram >> ./ram_header
mv ram_header ramdisk_new
./mkbootimg --kernel ./kernel_no_header --ramdisk ./ramdisk_new -o ./new_boot.img
rm -rf kernel rmdisk new_ram ramdisk ramdisk_no_header kernel_no_header ramdisk_new

2. pack-mtk-recovery.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
echo "packing..."
 
cd rmdisk
# Compress ramdisk_no_header
find . | cpio -o -H newc | gzip > ../new_ram
cd ..
# Generate ramdisk_header
python cksum.py new_ram ram_header
# Rename ramdisk_header file
mv ram_header.alt ram_header
# Merge ramdisk_no_header and ramdisk_header
dd if=./new_ram >> ./ram_header
# Rename ramdisk
mv ram_header ramdisk_new
# Make recovery image with kernel_no_header and ramdisk
./mkbootimg --kernel ./kernel_no_header --ramdisk ./ramdisk_new --base 0x10000000 --pagesize 2048 -o ./new_recovery.img
# Clean temp files
rm -rf kernel rmdisk new_ram ramdisk ramdisk_no_header kernel_no_header ramdisk_new
 
echo "Done!"

3. cksum.py

1
2
3
4
import struct
import sys
 
usage = "usage: cksum.py<header>" if len(sys.argv)</header>

–EOF–

Script for unpack mtk’s boot/recovery image

December 20th, 2012 No comments

From: http://www.beautyorange.com/2011/10/script-for-unpack-mtks-bootrecovery-image/

mt6573-recovery-900x254

1. unpack-boot.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
echo "Unpacking MTK Boot.img..."
 
KER=$(hexdump -C boot.img | grep "KERNEL" | cut --fields=3-10 -d' ');
NUMKER=$(od -A d -t x1 boot.img | grep "$KER" | cut -f1 -d' ');
 
REC=$(hexdump -C boot.img | grep "ROOTFS" | cut --fields=3-10 -d' ');
NUMREC=$(od -A d -t x1 boot.img | grep "$REC" | cut -f1 -d' ');
 
dd if=boot.img of=kernel bs=$NUMREC count=1
dd if=kernel of=kernel_no_header bs=$NUMKER skip=1
 
dd if=boot.img of=ramdisk bs=$NUMREC skip=1
NUMRAM=$(od -A d -t x1 ramdisk | grep "1f 8b 08 00" | cut -f1 -d' ');
 
dd if=ramdisk of=ram_header bs=$NUMRAM count=1
dd if=ramdisk of=ramdisk_no_header.gz bs=$NUMRAM skip=1
 
gunzip ./ramdisk_no_header.gz
mkdir rmdisk
cd rmdisk
cpio -i < ../ramdisk_no_header
 
echo "Done!"

2. unpacking-recovery.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
echo "Unpacking MTK recovery..."
 
KER=$(hexdump -C recovery.img | grep "KERNEL" | cut --fields=3-10 -d' ');
NUMKER=$(od -A d -t x1 recovery.img | grep "$KER" | cut -f1 -d' ');
 
REC=$(hexdump -C recovery.img | grep "RECOVERY" | cut --fields=3-10 -d' ');
NUMREC=$(od -A d -t x1 recovery.img | grep "$REC" | cut -f1 -d' ');
 
dd if=recovery.img of=kernel bs=$NUMREC count=1
dd if=kernel of=kernel_no_header bs=$NUMKER skip=1
 
dd if=recovery.img of=ramdisk bs=$NUMREC skip=1
NUMRAM=$(od -A d -t x1 ramdisk | grep "1f 8b 08 00" | cut -f1 -d' ');
 
dd if=ramdisk of=ram_header bs=$NUMRAM count=1
dd if=ramdisk of=ramdisk_no_header.gz bs=$NUMRAM skip=1
 
gunzip ./ramdisk_no_header.gz
mkdir rmdisk
cd rmdisk
cpio -i < ../ramdisk_no_header
 
echo "Done!"

Building android 4.0.4 for P7300

July 18th, 2012 No comments

在下载android代码时候耗时比较长,一个比较简单的方法就是先在本地建个镜像,然后再根据本地的镜像来进行更新,能减少不少时间。

比如: P7300 相关的操作如下.
repo init -u https://github.com/Galaxian-Soup/android.git –mirror
repo init -u https://github.com/Galaxian-Soup/android.git -b ics –reference=git://127.0.0.1/galaxian-soup.mirror/android.git

在编译Android 4.0.4 r2的时候出现的错误信息,修改如下:

host C++: libMesa <= external/mesa3d/src/glsl/loop_unroll.cpp
In file included from external/mesa3d/src/glsl/ir.h:38:0,
from external/mesa3d/src/glsl/loop_analysis.h:29,
from external/mesa3d/src/glsl/loop_unroll.cpp:25:
external/mesa3d/src/glsl/ir_visitor.h:48:17: warning: 'virtual void ir_visitor::visit(ir_function_signature*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:49:17: warning: 'virtual void ir_visitor::visit(ir_function*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:59:17: warning: 'virtual void ir_visitor::visit(ir_return*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:60:17: warning: 'virtual void ir_visitor::visit(ir_discard*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:61:17: warning: 'virtual void ir_visitor::visit(ir_if*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:62:17: warning: 'virtual void ir_visitor::visit(ir_loop*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:63:17: warning: 'virtual void ir_visitor::visit(ir_loop_jump*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:114:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_function_signature*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:116:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_function*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:118:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_expression*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:120:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_texture*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:122:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_swizzle*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:124:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_dereference_array*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:126:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_dereference_record*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:128:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_assignment*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:130:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_call*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:132:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_return*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:134:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_discard*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:136:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_leave(ir_if*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/loop_unroll.cpp:37:30: warning: by 'virtual ir_visitor_status loop_unroll_visitor::visit_leave(ir_loop*)' [-Woverloaded-virtual]
In file included from external/mesa3d/src/glsl/ir.h:38:0,
from external/mesa3d/src/glsl/glsl_symbol_table.h:34,
from external/mesa3d/src/glsl/linker.cpp:78:
external/mesa3d/src/glsl/ir_visitor.h:48:17: warning: 'virtual void ir_visitor::visit(ir_function_signature*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:49:17: warning: 'virtual void ir_visitor::visit(ir_function*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:59:17: warning: 'virtual void ir_visitor::visit(ir_return*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:60:17: warning: 'virtual void ir_visitor::visit(ir_discard*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:61:17: warning: 'virtual void ir_visitor::visit(ir_if*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:62:17: warning: 'virtual void ir_visitor::visit(ir_loop*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:63:17: warning: 'virtual void ir_visitor::visit(ir_loop_jump*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_visitor.h:81:17: warning: by 'ir_control_flow_visitor::visit' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:111:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_loop*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:113:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_function_signature*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:115:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_function*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:117:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_expression*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:119:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_texture*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:121:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_swizzle*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:123:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_dereference_array*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:125:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_dereference_record*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:131:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_return*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:133:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_discard*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:135:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit_enter(ir_if*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:110:30: warning: by 'find_assignment_visitor::visit_enter' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:86:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit(ir_variable*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:153:30: warning: by 'virtual ir_visitor_status find_deref_visitor::visit(ir_dereference_variable*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:87:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit(ir_constant*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:153:30: warning: by 'virtual ir_visitor_status find_deref_visitor::visit(ir_dereference_variable*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:88:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit(ir_loop_jump*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:153:30: warning: by 'virtual ir_visitor_status find_deref_visitor::visit(ir_dereference_variable*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h: In function 'void remap_variables(ir_instruction*, gl_shader*, hash_table*)':
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:86:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit(ir_variable*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:623:33: warning: by 'virtual ir_visitor_status remap_variables(ir_instruction*, gl_shader*, hash_table*)::remap_visitor::visit(ir_dereference_variable*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:87:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit(ir_constant*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:623:33: warning: by 'virtual ir_visitor_status remap_variables(ir_instruction*, gl_shader*, hash_table*)::remap_visitor::visit(ir_dereference_variable*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/ir_hierarchical_visitor.h:88:30: warning: 'virtual ir_visitor_status ir_hierarchical_visitor::visit(ir_loop_jump*)' was hidden [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp:623:33: warning: by 'virtual ir_visitor_status remap_variables(ir_instruction*, gl_shader*, hash_table*)::remap_visitor::visit(ir_dereference_variable*)' [-Woverloaded-virtual]
external/mesa3d/src/glsl/linker.cpp: In function 'void assign_varying_locations(gl_shader_program*, gl_shader*, gl_shader*)':
external/mesa3d/src/glsl/linker.cpp:1394:49: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1394:50: error: 'varyings' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp:1394:58: error: 'offsetof' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp:1395:48: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1412:47: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1412:48: error: 'position' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp:1414:47: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1414:48: error: 'pointSize' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp:1424:47: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1424:48: error: 'position' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp:1428:47: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1428:48: error: 'frontFacingPointCoord' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp:1431:47: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1431:48: error: 'frontFacingPointCoord' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp: In function 'void link_shaders(const gl_context*, gl_shader_program*)':
external/mesa3d/src/glsl/linker.cpp:1734:49: error: expected primary-expression before ',' token
external/mesa3d/src/glsl/linker.cpp:1734:50: error: 'fragColor' was not declared in this scope
external/mesa3d/src/glsl/linker.cpp:1734:59: error: 'offsetof' was not declared in this scope
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libMesa_intermediates/src/glsl/linker.o] Error 1
make: *** Waiting for unfinished jobs....

解决这个问题需要修改文件如下:

把 "#include ” 添加到 linker.cpp 文件头部。

====================================================

host C++: liboprofile_pp <= external/oprofile/libpp/arrange_profiles.cpp
In file included from external/oprofile/libpp/arrange_profiles.cpp:24:0:
external/oprofile/libpp/format_output.h:94:22: error: reference 'counts' cannot be declared 'mutable' [-fpermissive]
host C++: liboprofile_pp <= external/oprofile/libpp/callgraph_container.cpp
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/liboprofile_pp_intermediates/arrange_profiles.o] Error 1
make: *** Waiting for unfinished jobs....

解决方法:
需要修改external/oprofile/libpp/format_output.h:94行
mutable counts_t & counts为
counts_t & counts

====================================================

external/gtest/src/../include/gtest/internal/gtest-param-util.h:122:11: error: 'ptrdiff_t' does not name a type
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libgtest_main_host_intermediates/gtest_main.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from external/gtest/src/gtest-all.cc:38:0:
external/gtest/src/../src/gtest-filepath.cc: In member function 'bool testing::internal::FilePath::FileOrDirectoryExists() const':
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_dev' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::__pad1' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::__st_ino' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_mode' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_nlink' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_uid' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_gid' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_rdev' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::__pad2' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_size' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_blksize' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_blocks' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_atim' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_mtim' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_ctim' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:180:28: warning: missing initializer for member 'stat::st_ino' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc: In member function 'bool testing::internal::FilePath::DirectoryExists() const':
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_dev' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::__pad1' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::__st_ino' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_mode' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_nlink' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_uid' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_gid' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_rdev' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::__pad2' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_size' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_blksize' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_blocks' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_atim' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_mtim' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_ctim' [-Wmissing-field-initializers]
external/gtest/src/../src/gtest-filepath.cc:208:28: warning: missing initializer for member 'stat::st_ino' [-Wmissing-field-initializers]
frameworks/base/media/mtp/MtpDataPacket.cpp: In member function 'int android::MtpDataPacket::read(usb_request*)':
frameworks/base/media/mtp/MtpDataPacket.cpp:387:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libgtest_host_intermediates/gtest-all.o] Error 1

解决方法:
$vi external/gtest/src/../include/gtest/internal/gtest-param-util.h
+#include

====================================================

host C++: llvm-rs-cc <= frameworks/compile/slang/slang_rs_reflection.cpp
frameworks/compile/slang/slang_rs_export_foreach.cpp: In static member function ‘static slang::RSExportForEach* slang::RSExportForEach::Create(slang::RSContext*, const clang::FunctionDecl*)’:
frameworks/compile/slang/slang_rs_export_foreach.cpp:249:23: error: variable ‘ParamName’ set but not used [-Werror=unused-but-set-variable]
cc1plus: all warnings being treated as errors

make: *** [out/host/linux-x86/obj/EXECUTABLES/llvm-rs-cc_intermediates/slang_rs_export_foreach.o] Error 1
make: *** Waiting for unfinished jobs….

解决办法:
vim frameworks/compile/slang/Android.mk
把:
local_cflags_for_slang := -Wno-sign-promo -Wall -Wno-unused-parameter -Werror
改为:
local_cflags_for_slang := -Wno-sign-promo -Wall -Wno-unused-parameter
参考:http://code.google.com/p/android/issues/detail?id=22006#c0
参考:http://groups.google.com/group/android-building/browse_thread/thread/0207abb98ed72304

-EOF-

Categories: Android Tags: , , , ,