Android JNI 在几种IDE上的编译方法
首先需要安装cygwin,不用勾选太多的内容。
在select packages里面搜索autoconf2.1、automake1.10、binutils、gcc-core、gcc-g++、gcc4-core、gcc4-g++、gdb、pcre、libpcre-devel、gawk、make。
然后一路next安装完成即可。
Virtual Studio:
工具-外部工具-添加
标题:Build Jni
命令:E:\cygwin\bin\bash.exe
参数:--login -c "echo $NDK && cd '$(SolutionDir)' && pwd && $NDK/ndk-build"
初始目录:$(SolutionDir)
勾选 使用输出窗口
提示:
1.$(SolutionDir)指向的是jni工程的目录
2.不能用cd $(cygpath -u '%PROJECT_PATH%'),因为$()会被vs解释为宏
Android Studio:
在AndroidStuido的Setting-Plugins中安装C/C++插件
打开C文件点击Tools-Cpp Support-Do compile for selected c/c++ file to compile.选择GCC编译
编译提示信息:
cmd.exe /c C:\Users\Administrator.Mutour-pc\.AndroidStudioPreview\system\tmp\gcc4139693535478647149.bat |
|
-c "E:/Android/projects/hello-jni/jni/hello-jni.c" |
修改
gcc4139693535478647149.bat文件.
@echo off
set PATH=$PATH$;E:\cygwin\bin
set PROJECT_PATH=E:\Engine\trunk\GBV5.2\gbimejni
rem set PROJECT_PATH=?
if %PROJECT_PATH% EQU ? (
echo "Please set project path......"
exit
)
echo "Project path: %PROJECT_PATH%"
bash.exe --login -c "cd $(cygpath -u '%PROJECT_PATH%') && pwd && $NDK/ndk-build"
set PATH=$PATH$;E:\cygwin\bin
set PROJECT_PATH=E:\Engine\trunk\GBV5.2\gbimejni
rem set PROJECT_PATH=?
if %PROJECT_PATH% EQU ? (
echo "Please set project path......"
exit
)
echo "Project path: %PROJECT_PATH%"
bash.exe --login -c "cd $(cygpath -u '%PROJECT_PATH%') && pwd && $NDK/ndk-build"
eclipse
eclipse-Project-Properties-Builders-New-Program
Arguments输入
--login -c "cd $(cygpath -u '${build_project}') && pwd && $NDK/ndk-build"
build_project是Eclipse里面自带的工程路径,因为是windows风格的路径,需要用cygpath转换成cygwin的相对路径
NDK是cygwin里面设置的android ndk的路径
NDK=/cygdrive/e/Android/android-ndk-r7 #对应windows的e:\Android\android-ndk-r7
export NDK
这里需要点Specify Resources,勾选需要编译的文件。
Eclipse可以装个cdt,可以查看c的代码
转载于:https://my.oschina.net/mutour/blog/137748