作者qrtt1 (有些事,有时候。。。)
看板AndroidDev
标题[闲聊] 每当有新的 NDK 来,就要凑路径
时间Thu Jul 12 03:30:30 2012
工作上偶尔要编一些外部的 library
不同版本的 ndk 的 toolchains 通常只有一些改变而已
除了 r4 -> r5 路径变比较大(更早的我没用过QQ)
要维护 library configuration script 大多在搞定路径。
先前有些专案都很『朴拙』地手工找出路径,再 hardcode 上去,
趁失眠来做些整理的工作,写个简单的 script 产生路径:
https://gist.github.com/3092282#file_my_ndk_tool.py
例如:产生 mips 用的相关路径:
main("/Users/qrtt1/app/NDKs/android-ndk-r8", "mips", "android-9")
输出:
MY_NDK_LIB=/Users/qrtt1/app/NDKs/..../android-9/arch-mips/usr/lib
MY_NDK_INCLUDE=/Users/qrtt1/app/NDKs/..../android-9/arch-mips/usr/include
MY_NDK_CC_PREFIX=/Users/qrtt1/app/NDKs/..../bin/mipsel-linux-android-
MY_NDK_CC=/Users/qrtt1/app/NDKs/..../bin/mipsel-linux-android-gcc
MY_NDK_LIBGCC=/Users/qrtt1/app/NDKs/..../lib/gcc/mipsel-linux-android/4.4.3/libgcc.a
有了这些变数,剩下来的工作就是填入 configuration 参数,
以 libmp3lame 为例,简单地将变数填上,
该给的参数都给(这不是废话>"< 看 error message 缺什麽,就给什麽呗xd)
https://gist.github.com/3092282#file_cfg_libmp3lame.sh
最後看一下结果,嗯。有出现 mips32
qty:lame-3.99.5 qrtt1$ file libmp3lame.so
libmp3lame.so: ELF 32-bit LSB shared object, MIPS, \
MIPS32 version 1 (SYSV), dynamically linked, \
with unknown capability 0xf41 = 0x756e6700, not stripped
(至少看结果是对的,但能不能跑是另一个问题了 :P)
因为目前 team 里只有自己在弄 NDK 的东西,
也许做法很土炮,如果版友有新的方法也能分享一下呦。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.43.123.20
※ 编辑: qrtt1 来自: 114.43.123.20 (07/12 03:38)