我在iPhone开发上相当新,我正在尝试为我的项目添加一些静态库,但是我得到了“未找到符号”错误。
我已经搜索了这个问题并尝试了不同的解决方案而没有任何运气。这些库是在PC上编译的,而不是在Mac上编译的,所以我的问题是:
我是否需要在Mac上编译代码? 我需要哪些工具才能编译它们?
我已将标题包含在项目中。我试图链接的代码是用c编写的,并且是为ARM GCC 4.2编译的。
我收到以下错误代码:
ld警告:在/Users/<>/Playground/Collage/libbaseapi.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/capseng.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/excodecs.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmautorama.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmclearshot.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmexif.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmextencoder.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmfacewarp.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmfxplugin.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmimageenhance.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmimagefusion.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmjpegsqueeze.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmjpegtools.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmphotoart.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmredaway.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmsemc.a中,文件不是必需的架构 ld警告:在/Users/<>/Playground/Collage/fmspeedview.a中,文件不是必需的架构
未定义的符号: “_caps_destroyBuffer”,引自: - CollageMainView.o中的[CollageMainView drawRect:] ld:找不到符号 collect2:ld返回1退出状态 “_caps_destroyBuffer”,引自: - CollageMainView.o中的[CollageMainView drawRect:] ld:找不到符号 collect2:ld返回1退出状态 构建失败(1错误)
BR, 安德烈亚斯
答案 0 :(得分:0)
您无法将自定义(已编译)库添加到iPhone应用程序。您应该始终在项目中包含源代码。
答案 1 :(得分:0)
您需要将库的头文件添加到项目中, 或者如果它是一个缺少的框架,将其添加到Xcode中的“frameworks”文件夹。