首页 > 代码库 > Windows SublimeText内使用NDK编译Android so(不用cygwin)

Windows SublimeText内使用NDK编译Android so(不用cygwin)

测试环境:

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,点击 编辑 按钮 -> 变量值末尾加入:

;D:\android-ndk-r10c

注意多个值之间有分号分隔。

一路按确定。


2.建好sublime工程

最简单的方法是打开代码的根目录,然后点击菜单Project -> Save Project As... -> 起个名字保存在代码的根目录(保存位置是任意的,后面步骤中的路径相应改变就行)。


3.为工程加入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是设置命令行的初始路径,可填入android工程的路径,其中${project_path}是sublime text的保留变量,指代此sublime text工程文件的目录(注意,sublime text工程路径和android工程路径是两个概念,别混淆了)。

name为ndk-build-subl2是sublime text 2用的,我试了很多遍都无法直接调用ndk-build,所以是先调用同目录下的build.bat脚本,此脚本的内容为:

cd android_project
ndk-build -j5

4.设置Build System

Sublime菜单 Tools -> Build System -> 选择 ndk-build 或 ndk-build-subl2。这里的新选项是读取了上一步所做的设置才会出现的。


到此就ok了,在菜单中选择Build或Ctrl + B就会编译了,sublime text自动会弹出窗口显示build的结果。
踩了几个坑才总结出来的,如果遇到问题欢迎留言交流。


转载请注明出处:http://blog.csdn.net/hursing

Windows SublimeText内使用NDK编译Android so(不用cygwin)