当前位置:首页 » 编程软件 » 静态库编程

静态库编程

发布时间: 2025-02-23 18:02:38

‘壹’ 如何在android studio中用JNI调用静态库

NDK中 apps下本身就有一个例子,two-libs,就是引用静态库。
LOCAL_PATH:= $(call my-dir)

# first lib, which will be built statically
#
include $(CLEAR_VARS)

LOCAL_MODULE := libtwolib-first
LOCAL_SRC_FILES := first.c

include $(BUILD_STATIC_LIBRARY)

# second lib, which will depend on and include the first one
#
include $(CLEAR_VARS)

LOCAL_MODULE := libtwolib-second
LOCAL_SRC_FILES := second.c

LOCAL_STATIC_LIBRARIES := libtwolib-first

include $(BUILD_SHARED_LIBRARY)

‘贰’ linux动态库和静态库的区别

动态链接库和静态链接库是编程中常见的两种链接方式。在程序源代码编译完成后,通过编译器和链接器,程序会与这些库进行链接。其中,动态链接库与静态链接库的主要区别在于链接器在进行链接时,静态库会被直接编译进程序,而动态链接库则不会。我们通常将这些库称为程序的依赖。

程序运行需要这些依赖,而在程序进行静态链接后,程序本身便已包含了这些依赖。然而,在动态链接后的程序中,这些依赖则不会包含在程序里,它们需要由执行者自行安装进操作系统。特别是在Linux系统中,动态库的后缀通常是.so,而静态库的后缀为.a。

静态链接的一个显着缺点是,静态链接后的程序相较于动态链接所要占用的空间更大。这是因为静态链接会将链接库编译进程序里,所以静态编译后的程序会占用更多的存储空间。这种情况下,静态库的维护和更新变得相对困难,因为如果链接库中存在bug等需要更新时,可能需要更新整个程序。

相比之下,动态库在程序运行时会动态地加载这些库,因此我们只需要更新动态库而不需要更新所有依赖该库的程序。此外,很多程序的开发都会使用到相同的链接库,这些程序共享一个链接库,从而大大减少了存储资源的占用。

综上所述,动态链接库和静态链接库各有优缺点。使用动态链接库可以减少存储资源的占用,便于维护和更新。而静态链接库则适用于对程序大小有严格要求的情况,以及需要确保程序在没有依赖库的情况下也能运行的场景。

热点内容
php办公系统 发布:2025-07-19 03:06:35 浏览:900
奥德赛买什么配置出去改装 发布:2025-07-19 02:53:18 浏览:42
请与网络管理员联系请求访问权限 发布:2025-07-19 02:37:34 浏览:189
ipad上b站缓存视频怎么下载 发布:2025-07-19 02:32:17 浏览:844
phpcgi与phpfpm 发布:2025-07-19 02:05:19 浏览:527
捷达方向机安全登录密码是多少 发布:2025-07-19 00:57:37 浏览:694
夜魔迅雷下载ftp 发布:2025-07-19 00:39:29 浏览:99
增值税票安全接入服务器地址 发布:2025-07-19 00:20:45 浏览:486
solidworkspcb服务器地址 发布:2025-07-18 22:50:35 浏览:823
怎么在堆叠交换机里配置vlan 发布:2025-07-18 22:42:35 浏览:630