Windows SublimeText內使用NDK編譯Android so(不用cygwin)

來源:互聯網
上載者:User

標籤:

測試環境:

sublime text version 2.0.2, build 2221 和 sublime text stable channel, build 3065 (version3)

Win7 64位

android-ndk-r10c windows x86_64


步驟:

1.設定好ndk環境變數

假如把ndk壓縮包解壓到D:\android-ndk-r10c,則

控制台 -> 系統 -> 進階系統設定 -> 進階 -> 環境變數 -> 選中 系統變數裡的Path,點擊 編輯 button -> 變數值末尾增加:

;D:\android-ndk-r10c

注意多個值之間有分號分隔。

一路按確定。


2.建好sublimeproject

最簡單的方法是開啟代碼的根資料夾,然後點擊菜單Project -> Save Project As... -> 起個名字儲存在代碼的根資料夾(儲存位置是隨意的,後面步驟中的路徑對應改變即可)。


3.為project增加build_systems

sublime菜單 Project -> Edit Project -> 編輯檔案並儲存。編輯成這樣:

{"folders":[{"follow_symlinks": true,"path": "."}],    "build_systems":    [        {            "name": "ndk-build-subl2",            "cmd": "build.bat"        },        {            "name": "ndk-build",            "shell_cmd": "ndk-build -j5",            "working_dir": "${project_path}/android_project"        }    ]}
sublime text 2和3的情況不同,build_systems裡有兩個設定, 依據你使用的版本號碼,保留當中一個即可

當中,name為ndk-build的是sublime text 3用的,能夠看到shell_cmd就是調用ndk-build,working_dir是設定命令列的初始路徑,可填入androidproject的路徑,當中${project_path}是sublime text的保留變數,指代此sublime textproject檔案的檔案夾(注意,sublime textproject路徑和androidproject路徑是兩個概念,別混淆了)。

name為ndk-build-subl2是sublime text 2用的,我試了非常多遍都無法直接調用ndk-build,所以是先調用同檔案夾下的build.bat指令碼,此指令碼的內容為:

cd android_projectndk-build -j5

4.設定Build System

Sublime菜單 Tools -> Build System -> 選擇 ndk-build 或 ndk-build-subl2。這裡的新選項是讀取了上一步所做的設定才會出現的。


到此就ok了,在菜單中選擇Build或Ctrl + B就會編譯了,sublime text自己主動會彈出表單顯示build的結果。
踩了幾個坑才總結出來的,假設遇到問題歡迎留言交流。


PS:要在linux的sublimetext3編譯so,改動"shell_cmd"為". ~/.bashrc;ndk-build -j5"就能夠了,.bashrc要export ndk路徑


轉載請註明出處:http://blog.csdn.net/hursing

Windows SublimeText內使用NDK編譯Android so(不用cygwin)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.