什么是.a(作为libcrypto.a)文件?
.a
(例如libcrypto.a)文件究竟是什么,它们是由什么组成的? 是.m
或.o
还是.h
或.c
文件?
IOS SDK / Xcode如何理解它们? 如果我们在我们的xcode项目中包含.a
文件,我们是否也需要复制相应的源文件?
.a
文件是静态库文件。 他们“包含”一个或多个.o
文件,即编译的代码。 要使用它们,您(通常)需要与编译后的代码对应的头文件( .h
),但不需要源代码( .c
, .m
)本身。
.a
文件是用ar
实用程序生成的,编译器(通常)调用的链接器( ld
)知道它们的格式,以及如何从存档中提取相关代码片段并将其存入可执行文件。