Linux静态库+demo
发布人:shili8
发布时间:2025-02-24 22:35
阅读次数:0
**Linux 静态库与 demo**
在 Linux 环境下,静态库是指编译好的、可以被其他程序直接使用的库文件。这些库文件通常包含了某些函数或模块的实现,这些函数或模块可以被其他程序调用和使用。
本文将介绍如何创建一个简单的静态库,并且提供一个 demo 来演示其使用。
**创建静态库**
首先,我们需要创建一个名为 `mylib` 的静态库。我们可以使用 `gcc` 编译器来完成这个任务。
bash# 创建一个空白的 C 文件touch mylib.c# 编辑 mylib.c 文件,添加一些函数实现vim mylib.c
在 `mylib.c` 文件中,我们添加了以下函数:
c// mylib.c#include <stdio.h> void print_hello() { printf("Hello, World! "); } int add(int a, int b) { return a + b; }
接下来,我们使用 `gcc` 来编译生成静态库。
bash# 编译生成静态库gcc -c mylib.c -o mylib.o# 使用 ar 命令创建静态库ar rcs libmylib.a mylib.o
在上面的命令中,我们使用 `gcc` 来编译 `mylib.c` 文件,生成一个名为 `mylib.o` 的目标文件。然后,我们使用 `ar` 命令来创建一个名为 `libmylib.a` 的静态库。
**使用静态库**
现在,我们可以在其他程序中使用这个静态库了。我们可以通过以下方式来使用它:
c// demo.c#include <stdio.h> #include "libmylib.a" int main() { print_hello(); printf("2 +3 = %d ", add(2,3)); return0; }
在上面的 `demo.c` 文件中,我们使用了 `print_hello()` 和 `add()` 函数,这两个函数都是从静态库 `libmylib.a` 中导出的。
我们可以通过以下方式来编译和运行这个 demo:
bash# 编译生成可执行文件gcc -o demo demo.c libmylib.a# 运行 demo./demo
在上面的命令中,我们使用 `gcc` 来编译 `demo.c` 文件,并且将静态库 `libmylib.a` 链接到可执行文件中。然后,我们可以通过运行 `./demo` 命令来启动这个 demo。
**总结**
本文介绍了如何创建一个简单的静态库,并且提供了一个 demo 来演示其使用。在 Linux 环境下,静态库是编译好的、可以被其他程序直接使用的库文件。通过使用 `gcc` 和 `ar` 命令,我们可以轻松地创建和管理这些静态库。
**参考**
* [Linux 静态库]( />* [GCC 手册]( />* [AR 命令手册](