在 linux 中将 .o 文件转换为静态库并使其在终端中可用

Converting .o file into static library in linux and make it usable in terminal

我想创建一个简单的库,在编译和 ar 命令后我可以获得生成的 .a 文件。

现在我想把这个文件添加为静态库并在终端中使用它,我不知道是否可行。但想法来自 github 上名为 Ctypes.sh 的其他库。该库可用于从终端或 bash 终端进行系统调用。

我想知道如何将我的 mylib.a 添加为静态库并使其可从终端使用。

库很简单,我只想从终端在 linux 中调用一些系统调用。

我还查看了 ctypes.sh 的代码,因此我的库也可用于进行一些系统调用。

我上面用的参考在这里 https://github.com/taviso/ctypes.sh/wiki

您 运行 在 linux 上执行的每个命令都是您执行的二进制文件。 当你 运行 命令如:

ls -a

就像运行宁:

./ls -a

其中 ./ls 是二进制文件,-a 是参数。

终端中使用的所有二进制文件都存储在 bin 中(包含在默认 PATH 中)。当您 运行 一个命令时,您的终端将首先检查,在文件夹中找到二进制文件,然后,他将检查 PATH 环境变量中的每个文件夹。如果您不想将特定文件夹添加到 PATH 以将个人文件夹用于不同的文件夹(检查此 link)。

在您的问题中,您有一个具有不同功能(我想)的库,您不想在终端中使用。有 2 个解决方案:

  • 将你的库拆分成多个微程序,你可以在终端中执行,
  • 为 运行 不同的函数创建一个带参数的程序。