您好,欢迎来到微智科技网。
搜索
您的当前位置:首页Android Q预编译静态库实例

Android Q预编译静态库实例

来源:微智科技网

如果厂商提供了一个静态库,如何编译进系统呢,可参考

external/demo/Android.bp

cc_prebuilt_library_static {
    name: "hub",
    compile_multilib: "both",
    multilib: {
        lib32: {
            srcs: ["hub.a"],
        },
        lib: {
            srcs: ["hub.a"],
        },
    },
}

cc_binary {
    name: "demo",
    srcs: ["demo.c"],
	static_libs: [
        "hub",
    ],
    cflags: [
	"-Werror",
	"-Wno-unused-parameter",
	"-Wno-unused-variable",
	],
}

external/demo/demo.c

#include <stdio.h>
extern int sub(int a,int b);
int main(int argc, char *argv[])
{
	printf("ret=%d\n",sub(100,0));
	return 0;
}

如何生成hub.a

external/demo/hub.c

int sub(int a,int b){
	return a-b;
}

 运行如下命令生成hub.a

./prebuilts/gcc/linux-x86/aarch/aarch-linux-android-4.9/bin/aarch-linux-android-gcc external/demo/hub.c -o external/demo/hub.o -c
./prebuilts/gcc/linux-x86/aarch/aarch-linux-android-4.9/bin/aarch-linux-android-ar rcs external/demo/hub.a external/demo/hub.o

预编译可执行文件

cc_prebuilt_binary {
        name: "etf",
        vendor: true,
        srcs: ["etf"],
}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务