1. 程式人生 > >NDK開發筆記(一)---環境搭建

NDK開發筆記(一)---環境搭建

安裝NDK開發環境:

  結果:

執行 cygwin ,在彈出的命令列視窗輸入: cygcheck -c cygwin 命令,會打印出當前 cygwin 的版本和執行狀       態,如果 status 是 ok 的話,則 cygwin 執行正常。

      然後依次輸入 gcc –version , g++ --version , make –version , gdb –version 進行測試,如果都列印         出版本資訊和一些描述資訊,非常高興的告訴你,你的 cygwin 安裝完成了!

C:/cygwin/home/使用者名稱/.bash_profile

在後面加入下面的path.

NDK=/cygdrive/NDK路徑

PATH=${PATH}:/cygdrive/NDK路徑

export NDK

export NDK.

配置PATH環境變數。

配置 NDK 環境變數

3.下載最新的Eclipse 版本

4.配置android相關ADT,以及SDK環境

4.安裝CDT,可以支援C/C++ Project.

5.配置eclipse

生成專案也是快速而靈活的。你曾經使用過Eclipse的生成器嗎?它們是一些可配置的開關,用於執行你所配置的命令和重新整理工程資源。以下是我的配置:

右擊你的專案,選擇“properties

在左邊的列表中選擇“Builders

在右側,點選“New…”按鈕

在列表框,選擇“Program”作為配置型別;點選“OK”按鈕,進入下一個配置對話方塊。

命名name為“Native Builder

選擇Location為“c:/cygwin/bin/bash.exe

Working Directory”為“c:/cygwin/bin

Arguments”為:

  –login -c “cd /cygdrive/e/android-ndk-r5/samples/hello-jni && $NDK/ndk-build”

其中/cygdrive/e/android-ndk-r5/samples/hello-jni為你工程的目錄。

確保在login

前有兩個連線號,-c後面的引號。

接著開啟“refresh”的tab面板:

選中“Refresh resources upon completion

選擇“Specific resources

點選“Specify resources”按鈕,選擇你專案的libs目錄

選中“Recursively include sub-folders

接著開啟“Build Options”的tab面板:

選中“Allocate Console

選中“Launch in background

選中“Run the builder After a Clean

選中“Run the builder During manual builds

選中“Run the builder During auto builds

選中“Specify working set of relevant resources

點選“Specify Resources”按鈕,選擇你專案的JNI目錄,幷包含所有的檔案。

點選“OK”按鈕。

上面紅色字型的一定要選擇正確。這樣就會ba

 6.測試 
開啟專案jni目錄裡的hello-jni.c檔案把提示Hello from JNI!改成其他的文字:如:Hello World JNI.,然後再模          擬器中執行你的程式,如果模擬器中顯示了你最新修改的文字,

在Console中會顯示如下。。

Gdbserver      : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver

Gdbsetup       : libs/armeabi/gdb.setup

Compile thumb  : hello-jni <= hello-jni.c

SharedLibrary  : libhello-jni.so

Install        : libhello-jni.so => libs/armeabi/libhello-jni.so

那麼Congratulations!你已經全部配置成功啦。

7.要編寫jni中的.c檔案那加下面的include檔案

右鍵你的工程然後選擇Properties-->C/C++ Builder/Settings/GCC Compiler/include/加入你要引入的JNI標頭檔案

一般在

android-ndk-r5/platforms/android-3/arch-arm/usr/include。裡面包含了jni.h檔案。

這樣就可以在eclipse中用Alt+/來感應程式設計了。

8.android ndk logcat

如果想在JNI中使用logcat輸出的話那就做以下幾步

  •    #include <android/log.h>
  • LOCAL_LDLIBS := -llog 在Android.mk檔案中加入庫不然會報下面的錯誤 
    undefined reference to `__android_log_write'
    加入log 使用下面的指令。
    __android_log_write(ANDROID_LOG_ERROR,"Tag","Message");
    可以檢視log.h檔案的定義。路徑如下
    build/platforms/android-1.5/common/include/android/log.h

9.我自己新建個工程,然後加入jni,libs檔案,然後按照上面的做,發現它不能做到上面的第七步,工程右鍵選擇Properties沒看到Properties-->C/C++ Builder/的選項,這樣我引用不了c/c++的標頭檔案等,程式設計速度嚴重影響。

於是我就比對我的Test工程和hello-jni工程的區別,發現了在hello-jin/.PROJECT文件不同

於是在我的工程中比對這兩個PROJECT檔案,加入下面的code就可以實現

在buildSpec中加入了CDT的控制元件。

需要注意的是修改

${workspace_loc:/Test/Debug}-->Test為你的工程名字。

在natures的標籤中不同德是加入了CDT 外掛。

最後還要加人C/C++工程的.cproject 檔案,讓該工程也是C/C++工程,這個檔案你直接從一個在eclipse的c/c++工程copy到你工程的根目錄就ok,你可也觀察hello-jni工程。

修改完成之後儲存ok.就可以實現和NDK smaple一樣的效果了,程式設計方便多了。。^_^

10.搭建好了之後最好是做2個工程,一個是C/C++工程,另外一個android工程,在c/c++ build,build 完之後直接複製libs/ 的目錄到android工程。

11.如果上面步驟都做了還有問題可以聯絡我

Email:[email protected]

參考文獻:

相關推薦

NDK開發筆記---環境搭建

安裝NDK開發環境:   結果: 執行 cygwin ,在彈出的命令列視窗輸入: cygcheck -c cygwin 命令,會打印出當前 cygwin 的版本和執行狀       態,如果 status 是 ok 的話,則 cygwin 執行正常。       然後依次

hybrid cordova+vue開發APP 環境搭建

沒有選擇react-navite,而選擇cordova+vue2.x,是因為react-navite有學習成本,並且cordova+vue2.x程式設計師 可以直接上手,效能上可以滿足需求,成本低,開發速度快。 安裝所需軟體 安裝node.js,官網下載

python3成長筆記環境搭建

idea外掛 因長期寫java程式碼,還是使用idea作為開發工具,idea的plugin裡面搜到python。安裝,重啟。 環境搭建 程式碼 新建工程,選擇python的sdk路徑,下面的依賴可選可

樹莓派開發筆記 開發環境搭建

開發環境搭建 開發環境搭建 硬體準備 系統燒錄 系統配置 基本配置 其他配置 安裝開發軟體 開發環境搭建 硬體準備 SD-Card 樹莓派

Android NDK開發環境搭建

關於ndk的開發流程,對於Windows環境下NDK的開發,如果使用的NDK是r7之前的版本,必須要安裝Cygwin才能使用NDK。而在NDKr7開始,Google的Windows版的NDK提供了一個ndk-build.cmd的指令碼,這樣,就可以直接利用這個

kinect2.0開發筆記搭建環境

可以參考的開發者博文 首先是Kinect2.0對電腦硬體的要求 1、下載KinectSDKv2.0    下載地址   這個從官網上下載花費的時間巨長啊。博主是真想上傳sdk供讀者下載,可惜CSDN有70M檔案的上限要求。   下載完成後,雙擊即可安裝,博主第一次安裝

使用JAVA開發微信公眾平臺——環境搭建開發接入

iges 微信平臺 校驗 後臺服務 結果 png 交互 package app 一、 初始微信公眾平臺 微信公眾平臺,即我們平時所說的“公眾號”,曾用名“官方平臺”、“媒體平臺”,但最終命名為&ldq

micropython開發 環境搭建

跟隨潮流,學習micropython;這篇文章主要寫如何在windows環境下搭建編譯micropython原始碼的環境;需要你有一臺可以上網的windows電腦; 一、下載並安裝虛擬機器 VMware VMware虛擬機器軟體下載 連結:https://pan.baid

SpringMVC學習筆記環境搭建

SpringMVC主要功能 在獲取多個引數、檔案上傳、servlet功能單一方面都有很好的解決辦法 SpringMVC 環境搭建 構建一個空的WEB專案(記住勾選xml檔案) 匯入所需jar包 書寫主配置檔案: 建立resource資料夾 建立spring

【SSH實戰】IntelliJ IDEA環境開發BOS物流專案環境搭建

一、專案概述二、搭建專案開發環境(一)資料庫環境/*建立一個數據庫*/ CREATE DATABASE bos CHARACTER SET utf8; /*建立一個新使用者*/ CREATE USER lee IDENTIFIED BY 'root'; /*對新使用者進行授權

SSM框架開發web專案系列 環境搭建

前言   開發環境:Eclipse Mars + Maven + JDK 1.7 + Tomcat 7 + MySQL   主要框架:Spring + Spring MVC + Mybatis   目的:快速上手搭建SSM開發環境,熟悉客戶端請求到資料庫操作的流程。

ESP8266與NodeMCU開發環境搭建

這一章將描述ESP8266的效能與指標,以及開發環境的搭建。 ESP8266是2015年推出的一款Wifi模組,準確來說是集成了Wifi功能的MCU,拉低了目前的市場上Wifi模組價格,甚至一度突破

qt+ffmpeg播放器開發環境搭建

1、首先下載安裝QT 要下載mingw版的如下: qt-opensource-windows-x86-mingw492-5.6.2 2,下載ffmpeg點選開啟連結 (版本要下對 32位的) a、下載dev包 解壓,將解壓後的檔案改為ffmpeg,將ffmpeg目錄

webkit瀏覽器開發之路——環境搭建

      最近在著手開發一款手機瀏覽器,於是便用到了非常受歡迎的webkit,將自己的學習經過記錄下來,希望能和大家一同探討學習。       第一篇文章就詳細說一下環境如何搭建。       準備工作:    (1)學習文章:搞清楚一些基本的東西,建議看英文的。 htt

Spring Security技術棧開發企業級認證與授權環境搭建

Spring Security是一個能夠為基於Spring的企業應用系統提供宣告式的安全訪問控制解決方案的安全框架。它提供了一組可以在Spring應用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反轉Inversion of Contr

java學習 環境搭建、hello world的demo

環境變量 網上 類庫 .com java開發 www cnblogs rgs .class   本程序媛搞前端的,上班偶有空閑,不妨來學習學習,不然怎麽包養小白臉,走上人生巔峰?   說實話,每個語言都相通,有了javascript的基礎,並且有了兩三年跟java打交道的經

Linux 4.10.8 根文件系統制作---環境搭建

zxvf fstab project 根據 構建 yaffs http tar.bz2 onf 一、工具   制作工具為busybox   下載地址:https://busybox.net/   解壓:    二、制作文件系統   進入目錄,執行make menuconfi

MongoDB環境搭建與初始配置

dba 註意 管理員 開機自啟動 拓展 width 間接 face 環境搭建 前言   最近的項目中需要用到MongoDB,所這段時間需要學習知道怎麽去使用這個數據庫。   這裏我先簡單的介紹一下什麽是MongoDB,後面還會詳細的介紹:     MongoDB 是一

koa學習筆記環境安裝及文件目錄

項目信息 ack 分享圖片 true ref 使用 tps blank hub koa是Nodejs的一個框架。通過koa的學習,我們可以對node快速上手。 1,環境準備 node v7.6+,可以用nvm或者n安裝指定版本的Node mysql 數據庫準備,

Python3與OpenCV3.3 圖像處理--環境搭建與簡單DEMO

http opencv3 opencv col lan pytho href tar .net https://blog.csdn.net/qq_32811489/article/details/78636049 https://blog.csdn.net/gangzhu