在 Xcode 上安装 C++ JSON 库



我对xcode和c ++编程很陌生,所以如果我做错了,请告诉我。基本上,我想创建一个C++项目,该项目需要一个库来处理发出和接收 json 调用。(这最终将作为iOS和Android应用程序的"引擎"进行集成。我想使用 xcode 来创建这个,我尝试安装 libjson,但无法识别它。然后我尝试使用JsonCpp并按照说明进行操作。

1)我下载了焦油.gz2)我下载了scons python程序和jsoncpp文件夹并运行了适当的命令(类似于"python scons.py platform=linux-gcc check")

这创建了一个 .a 和一个 .dylib 文件

接下来,我尝试将文件移动到项目中,并从项目设置中"构建阶段"选项卡的"将二进制文件与库链接"部分以 xcode 形式链接它。

我用一个包含语句将代码链接到我的文件: #include "lib/jsoncpp/json.h"

这导致了以下错误:

建筑的未定义符号x86_64: "Json::Reader::p arse(std::__1::basic_string, std::__1::allocator> const&, Json::Value&, bool)",引用自: jsonParser::p arseLogin(std::__1::basic_string, std::__1::allocator>&, std::__1::basic_string, std::__1::allocator>&) in jsonParser.oLD:在建筑x86_64中找不到符号

(空):"Json::Reader::p arse(std::__1::basic_string, std::__1::allocator> const&, Json::Value&, bool)",引用自:

所要做的就是设置这个库,但它一直阻止我在过去一天中处理我的代码以寻找解决方案。

对于 libjson 库,我尝试按照此处的说明进行操作,但遇到了类似的问题:无法在 c++ 中安装 libjson 嵌入 XCode 4 项目

有没有人对我可以采取的步骤有任何建议?谢谢你的时间。

在项目导航器(XCode 左侧)中,单击项目上方。然后:

Build Phases -> Link binary with libraries

您可以在此处添加将链接到应用程序的所有库和/或框架。将此页面保持打开状态,然后将库拖放到库区域内...就是这样!没有秘密!

如果它不起作用。您可能使用错误的库。尝试lipo -info library检查库架构是否与您尝试使用的库架构相同(在本例中x86_64)。

如果仍然不起作用。您可能C++不兼容。在构建中混合使用 libstdc++ 和 libc++ 都会引起麻烦。所有使用 clang 构建的 C++11 代码都应设置一个环境变量:CXX=clang++ -std=c++11 -stdlib=libc++ ,或添加 CXX="clang++ -std=c++11 -stdlib=libc++" 作为要配置的参数。如果您通过命令行编译了 libjson,请再次检查。但是,对于libJSON,如果您打开一个新的XCode项目并将文件添加到项目中,而不是通过命令行编译它,那就容易多了。

最后,我尝试将整个源项目复制到我的 xcode 项目中并构建它。 它最终解决了这个问题。

这就是我解决问题的方式:

  1. 从SourceForge下载Libjson
  2. 解压缩它。
      -
  3. 将_internal文件夹 libjson.h 和 JSONOptions.h 移动到Xcode 项目文件夹
  4. 将这些文件添加到您的 Xcode 项目
  5. 从此项目中删除测试套件文件,因为您不需要它们
  6. 构建您的主要内容以测试它,您应该很高兴。

最新更新