Sunday, August 08, 2010
Tuesday, July 20, 2010
Android Build & Debugging with Emulator
This reference is based on Android 2.2 Froyo source tree. with Emulator
Reference
http://source.android.com/porting/debugging_gdb.html
Document : ./build/core/build-system.html
The following settings are needed in Android.mk.
------------------------------------------------------------------------------------------------------------------
1)
LOCAL_CFLAGS := -O0 -g
LOCAL_CPPFLAGS := -O0 -g
2)
LOCAL_STRIP_MODULE := false
------------------------------------------------------------------------------------------------------------------
LOCAL_STRIP_MODULE inheritate its value from TARGET_STRIP_MODULE. The variable TARGET_STRIP_MODULE is set as “TARGET_STRIP_MODULE := true” in the file “./build/core/combo/TARGET_linux-arm.mk”. So This setup makes LOCAL_STRIP_MODULE true. If LOCAL_STRIP_MODULE := true, “strip” remove all symbols from binaries. This means the binaries lost also debug symbols.
The reference of official homepage (http://source.android.com/porting/debugging_gdb.html) is enough.
Additionally we can set emulator port setup by using a different way from homepage’s way: “adb forward tcp: tcp:.
When your emulator launches, you can set
------------------------------------------------------------------------------------------------------------------
emulator -avd -qemu -redir [tcp|udp]::[guest_host]:
------------------------------------------------------------------------------------------------------------------
If you want to use your own-generated system.img
------------------------------------------------------------------------------------------------------------------
emulator -avd OpenGLTest -system system.img
------------------------------------------------------------------------------------------------------------------
Just type “emulator -help” for more detailed information.
If you use ./build/envsetup.sh, you can use shell command “mm”. Command “mm” means “make current directory”.
Reference
http://source.android.com/porting/debugging_gdb.html
Document : ./build/core/build-system.html
- Source Modification
The following settings are needed in Android.mk.
------------------------------------------------------------------------------------------------------------------
1)
LOCAL_CFLAGS := -O0 -g
LOCAL_CPPFLAGS := -O0 -g
2)
LOCAL_STRIP_MODULE := false
------------------------------------------------------------------------------------------------------------------
LOCAL_STRIP_MODULE inheritate its value from TARGET_STRIP_MODULE. The variable TARGET_STRIP_MODULE is set as “TARGET_STRIP_MODULE := true” in the file “./build/core/combo/TARGET_linux-arm.mk”. So This setup makes LOCAL_STRIP_MODULE true. If LOCAL_STRIP_MODULE := true, “strip” remove all symbols from binaries. This means the binaries lost also debug symbols.
- Setup Emulator
The reference of official homepage (http://source.android.com/porting/debugging_gdb.html) is enough.
Additionally we can set emulator port setup by using a different way from homepage’s way: “adb forward tcp:
When your emulator launches, you can set
------------------------------------------------------------------------------------------------------------------
emulator -avd
------------------------------------------------------------------------------------------------------------------
If you want to use your own-generated system.img
------------------------------------------------------------------------------------------------------------------
emulator -avd OpenGLTest -system system.img
------------------------------------------------------------------------------------------------------------------
Just type “emulator -help” for more detailed information.
- Build partially
If you use ./build/envsetup.sh, you can use shell command “mm”. Command “mm” means “make current directory”.
- Make clean partially(?)
Tuesday, June 22, 2010
2010/06/21 States of the Art : Mobile 3D of NINTENDO 3DS, IPHONE4 & Samsung Smart-phone
There were so many rumor about the next model of NINTENDO DS. Finally "NINTENDO 3DS" is announced at E3 Show 2010 (http://e3.nintendo.com/3ds/ ).
As a SW engineer, I'm curious about the detail specification of New NINTENDO. It's GPU is PICA200 with OpenGL ES 1.1 & DMP extensions. (http://clien.career.co.kr/cs2/bbs/board.php?bo_table=news&wr_id=914185 written in Korean)
It support Vertex Program (No Fragment Program, but support Per-pixel lighting by DMP MAESTRO EXT) & Render to texture for Multi-pass rendering Single/Double/Triple buffer for flexibility....
When compared with PICA200's performance, SGX535 (IPHONE4) is similar and SGX540 is superior. But I don't trust all information from the manufacturer, until I handle it in my hand.
Support feature "Described In Document" is ...
I don't have fully understand the meaning of OpenGL ES's revision number (I only understand OpenGL for Desktop System) . Anyway this descriptions show SGX5xx series have more powerful feature. Main point is "what Maestro Extension really support & It's performance". Since I'm not developer for NINTENDO 3DS Game, I don't have chance to recongnize this question.
Anyway...
As a SW engineer, I'm curious about the detail specification of New NINTENDO. It's GPU is PICA200 with OpenGL ES 1.1 & DMP extensions. (http://clien.career.co.kr/cs2/bbs/board.php?bo_table=news&wr_id=914185 written in Korean)
It support Vertex Program (No Fragment Program, but support Per-pixel lighting by DMP MAESTRO EXT) & Render to texture for Multi-pass rendering Single/Double/Triple buffer for flexibility....
Since I was not interested in mobile computing business, I did not heard the company's name, "Digital Media Professonals Techonology" or graphics-core "PICA". (http://www.dmprof.com/index_en.html ) The news that the adoptation of PICA200 by NITENDO 3DS is posted on the homepage. DMP is japanese company based on Tokyo.
If anyone see the demo movies posted on YOUTUBE, he feels suprised at the graphics power of the mobile platform. Let's see other high-end mobile 3D HW specs.
- Apple iPhone 4 : Apple A4 Processor (Arm Cortex A8 with POWERVR SGX535).
- Samsung Galaxy S : S5PC110 Processor (Arm Cortex A8 with POWERVR SGX540).
- PICA200 Perf : 15.3 MPolys/s, 800Mpx/s@200HZ,
- SGX535 Perf : 28 MPolys/s, 500Mpx/s@200MHz, Max Memory Band (GB/s) 4.2GB/s (Reference : http://en.wikipedia.org/wiki/PowerVR#Series5_.28SGX.29 )
- SGX540 Perf : 28 MPolys/s, 1000Mpx/s@200MHz
When compared with PICA200's performance, SGX535 (IPHONE4) is similar and SGX540 is superior. But I don't trust all information from the manufacturer, until I handle it in my hand.
Support feature "Described In Document" is ...
- PICA200 : OpenGL ES 1.1 + Maestro Extension no pixel shader but support per-pixel shading
- SGX5xx Series : OpenGL ES 2.0
I don't have fully understand the meaning of OpenGL ES's revision number (I only understand OpenGL for Desktop System) . Anyway this descriptions show SGX5xx series have more powerful feature. Main point is "what Maestro Extension really support & It's performance". Since I'm not developer for NINTENDO 3DS Game, I don't have chance to recongnize this question.
Anyway...
이 글은 스프링노트에서 작성되었습니다.
Monday, June 21, 2010
Subscribe to:
Posts (Atom)