iOS ZipArchive编译错误:-stdlib = libc ++的无效部署目标(需要iOS 5.0或更高版本)

时间:2012-12-10 06:12:34

标签: ios xcode4 zip objective-c++ unzip

我在Xcode中使用zipArchive库集成到我的项目中进行解压缩操作。我收到了以下编译错误消息。我的问题是如何解决这个编译问题?

哪些步骤会重现这个问题?

  1. http://code.google.com/p/ziparchive/下载ziparchive:
  2. 创建一个新的xcode项目(只使用单视图模板),选择ios4.3模拟器
  3. 将下载的解压缩文件夹拖到项目中,然后选择“复制项目...”,“创建组”,并选中“添加到目标”
  4. 预期产量是多少?你怎么看?

    编译错误,错误消息:-stdlib = libc ++的无效部署目标(需要iOS 5.0或更高版本)

    您使用的是哪个版本的产品?什么操作系统?

    mac,xcode4.5.1,iphone4.3模拟器(在iOS6中没问题)

1 个答案:

答案 0 :(得分:2)

来自ziparchive项目的文件ZipArchive.mm具有 Objective-C ++ 文件的后缀.mm。但是,该文件似乎不包含任何C ++代码。将其重命名为ZipArchive.m后,我甚至可以为iOS 4.3部署目标编译它。


问题的另一种解决方案可以在Xcode 4.5 Release Notes

中找到
  

使用此Xcode版本创建的项目使用新的libc ++   标准C ++库的实现。 libc ++库是   仅适用于iOS 5.0及更高版本以及OS X 10.7及更高版本。

     

在您的早期版本的iOS和OS X上启用部署   项目,将C ++标准库构建设置设置为libstdc ++(Gnu   C ++标准库)。