如何通过Ndk-build静态构建可执行文件?

时间:2014-06-19 02:51:16

标签: android gcc static android-ndk ndk-build

我正在尝试构建一个可在Windows中静态链接android系统库的可执行文件,我使用以下命令:

%NDK_PATH%\toolchains\arm-linux-androideabi-4.8\prebuilt\windows-x86_64\bin\arm-linux-androideabi-gcc.exe jni\main.c -o main --sysroot=%NDK_PATH%\platforms\android-9\arch-arm -static 

有时可能需要添加选项:

 -static-libgcc -static-libstdc++ -std=gnu99

输出文件是构建后我想要的 但是,如果我想通过 ndk-build 构建可执行文件,请使用 jni \ Android.mk jni \ Application.mk ,该选项:< / p>

-static -static-libgcc -static-libstdc++ -std=gnu99

我应该追加,我应该选择哪个 .mk 文件? 我尝试添加:

LOCAL_CFLAGS := -static

进入 jni \ Andorid.mk ,但输出没有改变。

如何解决 .mk 问题?

1 个答案:

答案 0 :(得分:5)

您可以在 Android.mk

中使用
LOCAL_LDFLAGS := -static

结果与简单的 gcc 单行 ,但是 arm-linux-androideabi-nm 报告没有动态符号我