當前位置:首頁 » 編程軟體 » eclipse編譯ndk

eclipse編譯ndk

發布時間: 2022-06-06 07:26:31

❶ eclipse怎樣編譯運行c++代碼

以引擎自帶的HelloCpp為例配置C++的的自動編譯。
在eclipse中導入hellocpp工程。操作路徑:eclipse--file--import
工程導入後,右擊工程--properties
取消CDT
builder。
然後點擊New新建一個我們自己的builder,選擇program。指定ndk-build.cmd來編譯我們的項目,下面的工作路徑將作為參數傳入給ndk-build.cmd
然後設置環境變數:
添加NDK_MODULE_PATH變數,注意要寫兩個路徑[cocos2d-x安裝目錄和其目錄下\cocos2dx\platform\third_party\android\prebuilt],用分號分開
例如:F:/cocos2d-2.1rc0-x-2.1.2;F:/cocos2d-2.1rc0-x-2.1.2/cocos2dx/platform/third_party/android/prebuilt
接著切換到build
options
最後點OK保存。
一切順利的話就會看到已經開始自動編譯引擎和c++代碼:
因為不是執行build_native.sh編譯本地代碼,所以別忘了手動拷貝下hellocpp工程下resource中的資源到android工程assets.

❷ Eclipse中NDK無法編譯(哪怕是一個新建的空白項目)

首先eclipse能運行.cmd文件嗎?cmd不是windows命令行嗎,能直接在系統運行。另外錯誤報的信息是沒有在classpath找到這個文件,一是你的ndk-build.cmd文件在E:\\NDK目錄下不存在,二有可能是eclipse
java
compiler不支持編譯.cmd文件,然後在classpath下找不到生成的.class文件,同樣會報錯。因為看不到你的project,所以只能根據猜測第二種情況要大一些。

❸ eclipse會自動調用ndk-build編譯jni嗎

一、寫好c代碼後,然後用cygwin搭建ndk-build環境,用ndk-build來編譯出相關的.so文件(libs目錄)之後,

再用eclipse里去編譯java程序,從而使用.so文件。該方法在上一篇搭建NDK環境有介紹。

二、利用eclipse完全可以達到編譯.so的目的。

首先,先裝上CDT吧,這是Eclipse的C/C++環境插件,裝上它後你就可以在Eclipse里創建C/C++項目和代碼文件了。插件的安裝有兩種方式,一種是在線安裝,一種是下載安裝包自己安裝,這里只介紹第一種方式,另一種方式可自行網路。首先登錄http://www.eclipse.org/cdt/downloads.php,找到對應你Eclipse版本的CDT插件的在線安裝地址,如下圖所示:,找到對應你Eclipse版本的CDT插件的在線安裝地址,如下圖所示:

2、找到對應你
eclipse版本的CDT插件地址,之後打開Eclipse,點Help菜單,找到Install New
Software菜單,注意一些老版本的Eclipse菜單不太一樣,比如說Europa的版本,就是Help--Software
Updates—Find and Install--Search for new features to install--New Remote
Site,除了菜單不太一樣外,安裝方式都差不多,可自行網路一下,下圖以Indigo版本為准:

3、把取的地址填進去,出來插件列表後,選Select All,如下圖所示:

然後狂點下一步即可完成安裝。

也可以點擊Add按鈕用離線方法安裝。出現該對話框,點擊Archive按鈕,選擇之前下載的離線安裝包,安裝過程同在線安裝。

4、安裝完成後,點菜單File-New-Project,出現新建項目界面,如果出現了C/C++項目,那麼恭喜你,CDT安裝也完成了,如下圖所示:

5、
不過光有CDT還不行,CDT編譯代碼還是需要調用cygwin當中的編譯工具進行,所以我們還需要手動配置C/C++的編譯器,還是以NDK自帶的
hello-jni為例子,首先打開
Eclipse,File->New->Project->Android->Android
project->next,在New Android Project選項卡中,選Create project from existing
source;在Location:按Browse找到NDK自帶的Hello-jni目錄。

選擇Android SDK版本後,點擊Finish,完成導入。

6、 把這個項目導入進來,導入後如下圖所示:

7、 編譯C文件:

右鍵單擊HelloJni之後,點擊Properties,彈出配置界面,之後再點擊Builders,如下圖所示:

點擊New按鈕,新添加一個編譯器,點擊後出現添加界面,選擇Program,點擊OK:

8、 點擊OK後,出現了添加界面:

在Main Tab界面, 填充以下內容:
Name:

編譯器名稱,隨便填寫。如:NDK_Builder

Location:

可執行工具的位置。即NDK安裝目錄下ndk-build.cmd的位置。

你可以點擊Browser File System...按鈕選擇Android NDK安裝目錄下的ndk-build.cmd文件來指定Location。如下圖:

你也可以設置一個變數來指定Android NDK的安裝目錄後設置Location。點擊Variables按鈕指定。如下圖:

出現選擇Variable的選擇框。

單擊Edit Variables...按鈕。出現Variable管理的界面。單擊New按鈕添加Variable。

輸入Variable的名稱,如:ndk_home。然後單擊Browse...按鈕,選擇Android NDK的安裝目錄後,單擊OK。

至此,NDK的Variable設置完成。

然後,單擊Main Tab界面上Location的Variables...按鈕,選擇剛才設置的ndk_home變數。如下圖:

單擊OK後,在Location的編輯框里會有選擇的ndk-home變數,在其後面添加上/ndk-build.cmd,OK,Location設置完成。

如下圖:

Working Directory:

要編譯的C/C++程序的工作目錄。一般指定到jni文件夾,因為所有的C/C++程序都在該文件夾內實現。

首先選擇Working Directory里的Browse Workspace...按鈕,如下圖:

然後,選擇要編譯的項目HelloJni的jni文件夾。

9、 接著切換到Refresh選項卡,給Refresh resources upon completion打上鉤,選擇The Project containing the selected resource項,

表示只更新包含選中資源的項目,選中的資源項就是Main Tab選擇的jni文件夾。

完成後如下圖:

10、 最後切換到Build Options選項卡,勾選During auto builds,如下圖所示:

Specify Resources 按鈕單擊後,選擇HelloJni項目的 jni 文件夾。

11、單擊 Apply OK 確認設置後,確保此 NDK 構建工具設置為列表中的第一個條目,方法是選擇 Up 按鈕,直到其位於 Builders 列表的頂部

記得一定要點Up按鈕,把它排到第一位,否則C代碼的編譯晚於Java代碼的編譯,會造成你的C代碼要編譯兩次才能看到最新的修改,排到第一位後如下圖所示:

12、 現在再次恭喜你,編譯配置也配置完成啦,那麼來試試看是否可以自動編譯吧,打開左側jni目錄里的hello-jni.c文件把提示Hello from JNI!改改,如下圖所示:

單擊項目,選擇Build Project後,在HelloJni項目下會多出libs文件夾,.so文件就存放在這里。

另外在Console控制台會輸出成功編譯的提示信息。

編譯之後點擊run按鈕跑起來看看吧,如果模擬器當中出現了你新修改的提示信息,那麼再一次恭喜你,已經全部配置成功了!

❹ 如何在eclipse中用ndk編譯jni

工具:
eclipse
步驟
1、右鍵要編譯jni的工程,點擊
2、簡單使用NDK編譯
3、點擊new添加以個編譯器
4、簡單使用NDK編譯
5、填好相關路徑參數
6、簡單使用NDK編譯
7、勾選如下選項
8、簡單使用NDK編譯
9、勾選如下選項
10、簡單使用NDK編譯
11、點擊右下角的按鈕
12、簡單使用NDK編譯
13、選擇要編譯的工程
14、簡單使用NDK編譯
15、最後勾上新建的這個編譯器

❺ 如何使用Eclipse的NDK開發動態庫,靜態庫

1.動態庫:

一、創建動態鏈接庫1、創建工程new->project->c++ project選擇Shared Library->Empty Project.輸入工程名a,點擊finish,完成工程的創建。

2、編寫代碼在windows下封裝動態鏈接庫時對要封的函數要用__declspec(dllexport)來標明,在linux下不用,在linux下只需要直接把要封的函數的聲明放到一個。h文件中,要用這個庫時將相應的。h文件載入到工程中。

3、生成動態鏈接庫編譯代碼,成功後在Debug目錄下會生成liba.so文件。

二、動態鏈接庫的使用1、創建工程new->c++ project->Executable->Empty Project.工程名為libr 2、編寫所需代碼,並將相應的。h文件放到工程目錄下並載入到工程中。

3、加入動態鏈接庫liba.so右鍵工程Properites->C/C++Build->Settings,然後如下圖



編譯通過!
為了我們的程序能夠正確載入,我們需要讓我們的程序在我們的系統范圍內也能夠找到我們的庫。這時候我們需要在設置一下。

❻ android-ndk-r12b 在eclipse上怎麼配置環境變數

一.插件的安裝
如果你下載的是Eclipse Standard,請下載對應版本的cdt(我直接使用的是Eclipse IDE for C/C++ Developers 不要安裝cdt的哦,我人比較懶,(*^__^*) 嘻嘻……)

比如 CDT 8.1.2 for Eclipse Juno cdt-master-8.1.2.zip,插入也比較簡單和adt安裝方式一樣。再次不在贅述。以前NDK的版本還要Sequoyah插件(好久不更新了)來進行本地開發,現在不需要了。
二.環境的配置
1).首先進行配置NDK的配置,打開Eclipse的 Window->preferences->Android->NDK 然後選擇路徑你的NDK路徑我的目錄如下D:\android-sdk\android-ndk-r9 這個目錄下有docs,sources,tests,samples e等等。 然後點擊Apply,OK即可

2).首先導入hello—jni工程,然後點擊右鍵->Properties你看見如下圖所示的界面,這不是一個可以編譯的NDK工程。你需要運行Cygwin或者在Eclipse配置。
我們首先使用Cygwin來生成程序的.so文件。打開Cygwin運行命令cd $ndk 這個ndk是之前你配置Cygwin環境變數設置的字元。然後cd samples/hello-jni
然後$ndk/ndk-build,你就可以看見生成.so文件成功的頁面,這時候刷新或者clean工程 點擊run as運行android程序。如下圖:三.Eclipse 工程配置在Eclipse中開發c/c++
第二步運行完之後,你會發現你把Hello from JNI修改為AAA(隨便寫的) 這個字元串不好使,輸出之後還是Hello from JNI 。你需要再次運行Cygwin才可以。當然這樣比較麻煩,你可以在Eclipse中配置一下,就不要在運行Cygwin了。直接運行eclipse就可以了。
1)在HelloJni上右鍵->New->other(這一步一定是other)->c/c++>Convert to a C/C++ Project(Adds c/c++ Nature)->Next
然後選擇你的工程HelloJni,選擇轉化為c工程,選擇Makefile Project Cygwin GCC,點擊Finish,再次點擊Finish即可

2)你發現你的工程.c文件有很多錯誤。這個時候點擊工程右鍵->Propreties這個時候你會發現和第二步的2)圖多了二項 c/c++ Build 和c/c++ General.
點擊 c/c++ Build
Use defult build commond的勾去掉 在Build command 填入bash <NDK路徑>\ndk-build 例如bash D:\android-sdk\android-ndk-r9\ndk-build點擊Apply OK即可。
點擊c/c++ General
打開列表點擊Paths and Symbols 在Includes 你看見Assembly GNU C (如果你在1)步選擇的C++project還會有GNU C++) .這個時候要選擇你所要的依賴庫,由於hello-jni不需要過多的庫文件所以
只需要點擊Add D:\android-sdk\android-ndk-r9\platforms\android-9\arch-arm\usr\include 這樣你就可以直接修改在Run as了。Ok成功運行。

❼ linux下ndk-bulid編譯形成了so文件,在windows環境下的eclipse怎麼使用

可以直接在android工程下使用,因為android就是linux內核。


  1. android的NDK開發需要在linux下進行: 因為需要把C/C++編寫的代碼生成能在arm上運行的.so文件,這就需要用到交叉編譯環境,而交叉編譯需要在linux系統下才能完成。

  2. 2.安裝android-ndk開發包,這個開發包可以在google android : 通過這個開發包的工具才能將android jni 的C/C++的代碼編譯成庫

  3. 3.android應用程序開發環境: 包括eclipse、java、 android sdk、 adt等。

NDK編譯步驟:

  1. 選擇 ndk 自帶的例子 hello-jni ,位於E:android-ndk-r5sampleshello-jni( 根據具體的安裝位置而定 ) 。

  2. 2.運行 cygwin ,輸入命令 cd /cygdrive/e/android-ndk-r5/samples/hello-jni ,進入到 E:android-ndk-r5sampleshello-jni 目錄。

  3. 3.輸入 $NDK/ndk-build ,執行成功後,它會自動生成一個 libs 目錄,把編譯生成的 .so 文件放在裡面。 ($NDK是調用我們之前配置好的環境變數, ndk-build 是調用 ndk 的編譯程序 )

  4. 4.此時去 hello-jni 的 libs 目錄下看有沒有生成的 .so 文件,如果有,ndk 就運行正常啦。

熱點內容
日誌伺服器如何分ip地址保存 發布:2024-05-20 14:46:50 瀏覽:262
如何阻止安卓自啟動 發布:2024-05-20 14:30:16 瀏覽:350
天翼雲伺服器監控 發布:2024-05-20 14:30:14 瀏覽:563
什麼游戲開伺服器便宜 發布:2024-05-20 14:21:48 瀏覽:656
萬網資料庫清空 發布:2024-05-20 14:20:46 瀏覽:557
編譯原理什麼是規范句型 發布:2024-05-20 14:08:59 瀏覽:562
jenkins自動化測試腳本 發布:2024-05-20 13:28:03 瀏覽:918
網游機戰腳本 發布:2024-05-20 13:26:56 瀏覽:482
天天愛消除卡心腳本 發布:2024-05-20 13:01:00 瀏覽:124
python中str的意思 發布:2024-05-20 13:00:52 瀏覽:235