从命令行调用iOS静态库中的函数
我们在iOS静态库中提供了一些函数。有一个头(.h)和一个已编译的(.a)文件。有没有任何方法可以从命令行(OSX、Windows或Linux)调用静态库中的函数?我已经研究了几天了,我开始怀疑这是否可能?我们不处理Apple/iOS/xcode环境,供应商只有这个静态库。有什么提示吗?如果可能的话,我愿意阅读任何文档,但现在我怀疑这是否可能?谢谢 在检查什么是可能的时候,我运行了这个从命令行调用iOS静态库中的函数,ios,static-libraries,Ios,Static Libraries,我们在iOS静态库中提供了一些函数。有一个头(.h)和一个已编译的(.a)文件。有没有任何方法可以从命令行(OSX、Windows或Linux)调用静态库中的函数?我已经研究了几天了,我开始怀疑这是否可能?我们不处理Apple/iOS/xcode环境,供应商只有这个静态库。有什么提示吗?如果可能的话,我愿意阅读任何文档,但现在我怀疑这是否可能?谢谢 在检查什么是可能的时候,我运行了这个 lipo -info libExaNumberCalc.a 我运行上面的程序,它说 Architecture
lipo -info libExaNumberCalc.a
我运行上面的程序,它说
Architectures in the fat file: libExaNumberCalc.a are : i386 armv7 x86_64 arm64
不知道上面是否增加了希望?首先想到的是,您可以围绕库函数编写瘦包装并构建/运行它。差不多
// main.c
#include "your_library_header.h"
int main(int argc, char *argv[])
{
// parse & pass parameters if necessary from command line
your_lib_function();
return 0;
}
用类似于
clang main.c -o output.file -lyourlibrary
iOS静态库用于iOS如果您不在iOS环境中操作,它将不是youhaiz的正确库,该供应商将我们置于噩梦般的境地:-/我们被告知他们将为我们提供这些库,但这是我们最不希望看到的。我在考虑这里的任何可能性。。。比如能够在一些模拟器中“运行东西”等,并提供输入。。。并获得输出。它基本上是一组处理一些数字的函数。我愿意接受任何黑客的方法,直到我们得到它与供应商排序。他们的技术水平很低,他们的iOS人员早已不在了。有没有办法知道这个静态库是否不仅仅适用于iOS?我的意思是,我已经读到,当创建这样的库时,是否可以创建它们以在不同的体系结构上运行?有没有办法用.a和头文件检查这个问题?刚才看到了一些东西。。。lipo-info-xxx.a文件?我想这会告诉我我猜是哪种体系结构……看来你们的库已经准备好在设备和模拟器上运行了。它应该在Mac上构建为一个独立的可执行文件,很好(它在链接阶段发出警告,但它可以正常工作),我继续尝试,我的openssl静态库没有出现问题。库文件名为“libcrypto.a”,-L选项向编译器提示在何处查找库文件
clang-lcrypto-L/Projects/test-oa.out main.c