谁能教我这个工程怎样生成android环境的.so文件,快要被逼疯了!

我不得踢噶 2014-07-22 04:05:08
下面是工程地址
http://sourceforge.net/projects/opengcd/
我现在只能生成linux环境下的.so,在这个.so文件在android环境下不能用,谁能教我怎么生成android环境下的。
我的环境是ubuntu12.04。
如果谁能教我怎样生成,谢谢。
...全文
173 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
我不得踢噶 2014-07-24
  • 打赏
  • 举报
回复
引用 4 楼 han1202012 的回复:
要用到 Android 上的话 需要 经过交叉编译啊 使用 普通的 gcc 是不行的 , 需要使用 arm-linux-androideabi-4.6-gcc/g++ 交叉编译工具链 编译出来 才能用到 Android上 你去下载一个吧
对,他是用arm-linux-adnroideabi的,里面有一个说明是说用configure加host 还有ndk、sdk三个参数来生成makefile,但是我这样运行之后有一个警告:configure: WARNING: unrecognized options: --with-ndk, --with-sdk. 貌似ndk和sdk的路径参数没有添加进去,导致我不能生成for android的so文件。不知道我的理解是不是对的,你能帮我看下吗? 我来说下我的步骤吧: 先用svn下载最新的工程 svn checkout svn://svn.code.sf.net/p/opengcd/code/trunk opengcd-code 1.autogen.sh 2./configure --prefix=/usr 3.make 4.cd libdispatch 5./configure --host=arm-linux-androideabi --with-ndk=<NDK_PATH> --with-sdk=<SDK_PATH> 就在运行这步的时候出现configure: WARNING: unrecognized options: --with-ndk, --with-sdk. 6.make 然后用find -name *.so命令找到了一个libdispatch.so的文件,然后我去替换了下工程里的libdispatch.so文件,但是运行不了,说什么格式不对。 麻烦你帮我看看怎么回事,谢谢!
韩曙亮 2014-07-22
  • 打赏
  • 举报
回复
在 Linux 上编译后是 x86 平台的 android 是 arm 平台的 CPU 指令集都不同 两者的 so 动态库也不通用 需要特殊编译
韩曙亮 2014-07-22
  • 打赏
  • 举报
回复
要用到 Android 上的话 需要 经过交叉编译啊 使用 普通的 gcc 是不行的 , 需要使用 arm-linux-androideabi-4.6-gcc/g++ 交叉编译工具链 编译出来 才能用到 Android上 你去下载一个吧
逍遥笑 2014-07-22
  • 打赏
  • 举报
回复
1、下载NDK解压 2、选择项目,右键properties->Builders->new 3、选择program 4、location设置你的ndk里面的android-ndk-r9d-windows-x86_64\android-ndk-r9d\ndk-build.cmd working设置你的过程位置 5、然后run运行, so文件将在res/libs目录下
我不得踢噶 2014-07-22
  • 打赏
  • 举报
回复
引用 1 楼 sagittarius1988 的回复:
ndk编译可以的啊
http://sourceforge.net/p/opengcd/code/HEAD/tree/trunk/README 你帮忙看下这个文档,有教怎么生成.so文件,但是我貌似只能生成linux版本的。因为放到android项目里用不了,而且make的时候还有点错误。 你能帮帮忙看看吗?谢谢!
sagittarius1988 2014-07-22
  • 打赏
  • 举报
回复
ndk编译可以的啊

80,337

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧