Stay Hungry , Stay Foolish

君子生非异也,善假于物也

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

使用交叉编译工具实现andorid平台下的jni开发,记录codeblock配置过程,方便后续参考。

1 工具版本信息

NDK r8b

Code::Blocks 10.05

2 配置过程

使用codeblock进行jni开发不需要编写makefile文件,而是使用图像界面的方式去设置android平台,API版本以及编译器等信息。

具体过程如下:

codeblok—>Settings—>Compile and debugger—>Global complier settings在selected Complier中选择“GNU RAM GCCCompiler”选择“copy”按钮,输入新的名称,建议使用NDK版本号进行命名,并按下“Set as default”。

image

在Compiler settings选项卡中,在defines中可以添加自定义变量,在后续的路径配置过程中使用。

image

设置需要链接的公共库以及链接选项

-nostdlib -Bdynamic
-Wl,-dynamic-linker,/system/bin/linker
-Wl,--gc-sections
-Wl,-z,nocopyreloc
-ldl

image

设置头文件查找路径

image

设置链接库路径

image

设置NDK编译工具路径

image

设置调试工具路径

image

至此,所有公共配置设置完毕,点击“OK”进行保存。

下面,针对具体的编译库配置。

在ManagerMent视图窗口中,选中需要配置的工程,在菜单“Project”—>”Build options”打开设置对话框。

首先选择我们前面配置好的编译器:

image

编译选项设置

image

链接选项设置:

image

依赖库的头文件查找路径设置:

image

依赖自定义库文件查找路径:

image

其中,相对路径是相对项目工程文件路径“*.cbp”而言。

自定义编译设置,在编译链接过程中,可以使用自定义变量形式。具体引用方式为$(varname)。

image

在Project—>Properties中的“Build Targets”配置编译的目标信息。例如:编译目标类型,文件名等。

image

配置完毕后,执行Build—>Rebuild对项目进行编译。

 

附录:

NDK-r10 Search-Compiler路径信息:
D:\program\android\ndk-r10b\platforms\android-9\arch-arm\usr\include
D:\program\android\ndk-r10b\sources\cxx-stl\gnu-libstdc++\4.6\include
D:\program\android\ndk-r10b\sources\cxx-stl\gnu-libstdc++\4.6\libs\armeabi\include
D:\program\android\ndk-r10b\toolchains\arm-linux-androideabi-4.6\prebuilt\windows-x86_64
D:\program\android\ndk-r10b\toolchains\arm-linux-androideabi-4.6\prebuilt\windows-x86_64\lib\gcc\arm-linux-androideabi\4.6\include

Serach-Linker:
D:\program\android\ndk-r10b\sources\cxx-stl\gnu-libstdc++\4.6\libs\armeabi
D:\program\android\ndk-r10b\platforms\android-9\arch-arm\usr\lib
D:\program\android\ndk-r10b\toolchains\arm-linux-androideabi-4.6\prebuilt\windows-x86_64\lib\gcc\arm-linux-androideabi\4.6

Toolchain executables:
D:\program\android\ndk-r10b\toolchains\arm-linux-androideabi-4.6\prebuilt\windows-x86_64
Addition Paths:
D:\program\android\ndk-r10b\toolchains\arm-linux-androideabi-4.6\prebuilt\windows-x86_64\bin
========================================================================================================================================
NDK-r8  Search-Compiler路径信息:
D:\program\android\ndk-r8b\platforms\android-9\arch-arm\usr\include
D:\program\android\ndk-r8b\sources\cxx-stl\gnu-libstdc++\4.4.3\include
D:\program\android\ndk-r8b\sources\cxx-stl\gnu-libstdc++\4.4.3\libs\armeabi\include
D:\program\android\ndk-r8b\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\include
D:\program\android\ndk-r8b\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\lib\gcc\arm-linux-androideabi\4.4.3\include

Serach-Linker:
D:\program\android\ndk-r8b\sources\cxx-stl\gnu-libstdc++\4.4.3\libs\armeabi
D:\program\android\ndk-r8b\platforms\android-9\arch-arm\usr\lib
D:\program\android\ndk-r8b\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\lib\gcc\arm-linux-androideabi\4.4.3

Toolchain executables:
D:\program\android\ndk-r8b\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows

Addition Paths:
D:\program\android\ndk-r8b\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\arm-linux-androideabi\bin
posted on 2016-01-31 11:45  octocat  阅读(784)  评论(0编辑  收藏  举报