标签:app 源文件 stl sdl 解决方法 等等 image 分享 架构
1. 下载并解压SDL源代码
下载链接:https://libsdl.org/download-2.0.php
2. 导入项目
2-1.导入项目, 如图:
2-2. 找到下载好的SDL源代码,选择android-project,点击OK,如图
2-3. 选择一个空目录,作为导入的Android工程目录,然后点击Next,如图
2-4. 如果目录不存在,则弹出下面的提示框,点击OK,创建新目录
2-5. 点击Finish开始构建项目,等它构建完成
3. 修改配置信息和修复各种错误
3-1. 因为我使用的是Android Studio 3.0,它提示我最小的Gradle必须是4.1以上
解决方法:已经提示很明显了,修改项目下的wrapper目录下的gradle-wrapper.properties文件。我直接改为4.2因为我已经下载好4.2的Gradle,如下图:
3-2. 修改app下的build.gralde文件,修改compileSdkVersion,添加abiFilters只需要arm架构的,添加ndkBuild表示使用ndk编译,如下所示:
3-3. 在jni目录下创建一个名称为SDL的文件夹,将将sdl源代码里的include、src和Android.mk文件拷贝进来,如下图所示:
3-4. 在jni目录下的src目录下创建一个名称为YourSourceHere.c的源代码,里面的内容就是main函数的入口,什么都不用干,只是为了不让报错,如下所示:
YourSourceHere.c源文件的位置如下图所示,从图里面也可以看出为什么创建的文件夹名称是SDL了,为什么创建的.c源文件是名称是YourSourceHere.c了,如果想创建其他名称的也可以,只需要相应修改右边的名称即可。
3-5. 修改Application.mk文件,打开APP_STL注释表示使用标准库,修改APP_PLATFORM 等等,如下图所示:
4. 构建项目,生成so动态库
4-1. 构建步骤,先点击图1的按钮构建项目,构建成功之后,再点击图2的按钮编译生成so动态库,如下图所示:
4-2. 最终的生成结果,如下图:
libSDL2.so就是我们所期待的动态库,是jni/SDL目录下的源文件所生成的动态库,而libmain.so库是jni/src下的YourSourceHere.c源文件生成的so动态库。到此所有编译工作完成。
标签:app 源文件 stl sdl 解决方法 等等 image 分享 架构
原文地址:http://www.cnblogs.com/yongfengnice/p/7827040.html