参考资料:http://mobilepearls.com/labs/ndk-builder-in-eclipse/
手动运行ndk-build太麻烦,能不能让c像java那样自动编译呢?
当然可以,需要做以下配置:
1.新建一个项目编译器
2.给编译器命名,指定编译工具(ndk-build.cmd)的路径,指定被编译的项目的路径。(注意:window系统下的编译器是ndk-build.cmd,linux下是ndk-build.)
3.给编译器指定编译完成所需要刷新的代码的目录;(lib/libs)
4.指定需要编译的代码所在的目录;(jni)
5.编辑c代码,保存,自动编译,成功了;
具体介绍和图解如下:
Setting up Automatic NDK Builds in Eclipse
1.新建一个项目编译器
When editing native JNI code in an Android project using theAndroid NDKyou may configure Eclipse to automatically rebuild your project when editing native code, just as it does for java. The below steps shows how to perform the necessary configuration (note that this requires revision 4 or later of the NDK - previous revisions does not contain the necessaryndk-build
binary):
Start by right clicking on your android project (namedhello-neonin the below screenshots) with JNI resources, and selectProperties
. In the resulting dialog, choose theBuilders
entry in the list to the left and press theNew...
button:

A new dialog will open presenting a list of builder types. Select theProgram
type and press theOK
button:

Main
tab, fill in the following:
Browse Workspace...
button to select it graphically)
The result should look something like the below:

Now continue with the refresh tab. Make sure the two checkboxesRefresh resources upon completion.
andRecursively include sub-folders
are checked. Choose theSpecific resources
radio button and press theSpecify Resources...
button:

Since the ndk-build process will generate files in the lib folder, we want Eclipse to discover changes made there without having to refresh manually. So select the lib folder in the project (create one if necessary) and press theFinish
button:

Now skip theEnvironment
tab and go to the finalBuild Options
tab. Make sure theRun the builder: During auto builds
checkbox is checked.

Since the NDK build only needs to happen when editing files in thejni
folder, check that folder and press theFinish
button.

Now finally pressOK
in the builder configuration dialog - the new NDK builder should now be up and running. Try editing any file in thejni
folder and check that theConsole
view produces output from the build process:
