gpt4 book ai didi

objective-c - 如何使用 libtool 在 Mac OS 上创建 .a 文件(静态库)?

转载 作者:太空狗 更新时间:2023-10-30 03:50:07 25 4
gpt4 key购买 nike

当谈到使用终端手动构建库时,不幸的是我没有太多经验,所以我有点卡在这里。

我已经下载了一个用于 objective-c 的库,它带有 makefile 等。

我可以看到该文件夹​​还包含一个名为“libtool”的可执行文件,我进行了一些搜索,我想这是我必须用来构建必要的 .a 文件的程序?不幸的是,我真的找不到任何似乎有效的有用文章。

库的文件夹包含一些.sh 文件、.pc 文件和一些.la 文件,但我是有点不确定我必须使用哪些作为 libtool 程序的输入以将它们编译成 .a 文件。

所以我的问题是,您必须将哪些文件输入到libtool 中才能将它们编译成必要的.a 文件?您具体使用什么命令来完成此操作?

谢谢大家的宝贵时间:)

最佳答案

首先简单介绍一下静态库:

Unix 环境(如 Mac OSX 和 Linux)中的静态库实际上只是由 ar 创建的目标文件的存档。命令行程序。

这就是 .a 扩展名的含义:存档。

要使用一些目标文件创建静态库,您可以使用如下命令:

ar crv libmy_library.a objectfile1.o objectfile2.o

至于您的实际问题,libtool 应该从 makefile 中自动调用,创建库,即以 .la 结尾的文件。然而,这不是真正的库,真正的库在一个隐藏目录中。您可以通过执行以下操作找到它

find . -name '*.a'

但正如我所说,makefile 应该 已经处理好所有事情,包括在您执行操作时将正确的库安装在正确的位置,例如安装

有关libtool 的信息,请参阅this site .

关于objective-c - 如何使用 libtool 在 Mac OS 上创建 .a 文件(静态库)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12315253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com