Android+NDK+CDT+eclipse+OPenGL ES的編譯與native調試,androidndk

來源:互聯網
上載者:User

Android+NDK+CDT+eclipse+OPenGL ES的編譯與native調試,androidndk

環境:

NDK版本r8,eclipse和Android使用的是adt-bundle-windows-x86打包版本比較方便,

一、NDK的編譯

1、源碼

NDK的examples目錄有Hello-GL2的源碼,大家可以先使用它。

2、將樣本工程匯入到eclipse中

3、編譯設定

a、選中工程,eclipse中菜單windows->prefereces-》android-》NDK

設定NDK的路徑

b、選中工程,eclipse中菜單project->properties 

單擊builder,  CDT Builder選中

單擊c/c++Bulder,Builder setting 中,build command重新設定為ndk-build NDK_DEBUG=1 V=1(NDK_DEBUG=1 V=1主要為後面的native調試作準備)

c、run 工程即可



二、native 調試

1、建立模擬器

模擬器版本不要太高,我的版本是android2.3.3,否則可能調試不了。


2、選中工程,右鍵快顯功能表,單擊native support

3、選中工程,右鍵快顯功能表,單擊 Run as android applicaton,先將程式裝上

4、選中工程,右鍵快顯功能表,單擊 debug as native applicaton


4、就可以在調試c++代碼了

注意點:

1、真實機器可能會出現no debug symbol found的錯誤

2、模擬器版本太高也會出現no debug symbol found的錯誤

3、將下載的的其他版本的sdk放在\sdk\platforms中

4、需要先run as android application先將app裝上

錯誤類型:

由於android版本太高出現的error類型

1、no debugging symbols found

2、No symbol table is loaded. Use the "file" command

3、Error accessing memory address 0x1a66: Input/output error 等等





Android opengl es 20怎學習?用這個做遊戲怎?

OpenGLES是一個讓人崩潰的東西。在Andorid手機上做3D還就得用它。把我記的一些筆記分享在這裡吧:

Android OpenGL ES簡介 20011-6-3
Android系統使用OpenGL的標準介面來支援3D圖形功能,android 3D圖形系統也分為java架構和本地代碼兩部分。
本地代碼主要實現的OpenGL介面的庫,在Java架構層,javax.microedition.khronos.opengles是java標準的OpenGL包,
android.opengl包提供了OpenGL系統和Android GUI系統之間的聯絡。
Android的本地代碼位於frameworks/base/opengl下,
JNI代碼位於frameworks/base/core/com_google_android_gles_jni_GLImpl.cpp和frameworks/base/core/com_google_android_gles_jni_EGLImpl.cpp,
java類位於opengl/java/javax/microedition/khronos下
本地測試代碼位於frameworks/base/opengl/tests。包括angeles、fillrate等14個測試代碼,這些代碼都可以通過終端進行本地調用測試(模擬器中使用adb shell)。
OpenGL ES 1.x
固定管線操作,支援glVertexPointer()等函數,不支援GLSL。標頭檔在ndk的GLES目錄下,庫檔案是libGLESv1_CM.so。
OpenGL ES 2.x
可程式化管線操作,不相容1.x,不支援固定管線操作,例如glVertexPointer()等函數。支援GLSL(還必須用這個來編程)。標頭檔在ndk的GLES2目錄下,庫檔案是libGLESv2.so。

OpenGL ES學習 2011-6-30
OpenGL定義了自己的資料類型。應該堅持使用這些OpenGL的資料類型,從而保證可移植性和效率。
OpenGL ES 目前不支援64位元據類型。
OpenGL ES 只支援三邊形。
OpenGL ES 只支援gl開頭的函數,glu庫都不支援。
OpenGL ES 從 OpenGL中刪除的功能:
1. glBegin/glEnd
2. glArrayElement
3. 顯示列表
4. 求值器
5. 索引色模式
6. 自訂裁剪平面
7. glRect
8. 影像處理(這個一般顯卡也沒有,FireGL/Quadro顯卡有)
9. 反饋緩衝
10. 選擇緩衝
11. 累積緩衝
12. 邊界標誌
13. glPolygonMode
14. GL_QUADS,GL_QUAD_STRIP,GL_POLYGON
15. glPushAttrib,glPopAttrib,glPushClientAttrib,glPopClientAttrib
16. TEXTURE_1D、TEXTURE_3D、TEXTURE_RECT、TEXTURE_CUBE_MAP
17. GL_COMBINE
18. 自動紋理座標產生
19. 紋理邊界
20. GL_CLAMP、GL_CLAMP_TO_BORDER
21. 消失紋理代表
22. 紋理LOD限定
23. 紋理偏好限定
24. 紋理自動壓縮、解壓縮
25. ......餘下全文>>
 
android配置cocos2d-x環境怎安裝CDT?

建立Android項目, 項目名稱"CCTest". Youngs-MacBook-Air:~ young40$ cd /opt/cocos2d-2.0-x-2.0.3/ Youngs-MacBook-Air:cocos2d-2.0-x-2.0.3 young40$ ./create-android-project.sh use global definition of NDK_ROOT: /opt/android-ndk-r8b use global definition of ANDROID_SDK_ROOT: /opt/android-sdk-macosx Input package path. For example: org.cocos2dx.example com.young40 Now cocos2d-x supports Android 2.2 or upper version Available Android targets: ---------- id: 1 or "android-3" Name: Android 1.5 Type: Platform API level: 3 Revision: 4 Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P ABIs : armeabi ---------- id: 2 or "android-10" Name: Android 2.3.3 Type: Platform API level: 10 Revision: 2 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854 ABIs : armeabi ---------- id: 3 or "android-15" Name: Android 4.0.3 Type: Platform API level: 15 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800 ABIs : armeabi-v7a, x86 ---------- id: 4 or "android-16" Name: Android 4.1 Type: Platform API level: 16 Revision: 2 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in ABIs : armeabi-v7a input target id: 2 input your project name: CCTest Created project directory: /opt/cocos2d-2.0-x-2.0.3/CCTest/proj.android Created directory /opt/cocos2d-2.0-x-2.0.3/CCTest/proj.android/src&#47......餘下全文>>
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.