我已经安装了Xcode 5.0.2,并且正在命令行上编译所有内容。在make/make install构建libjson之后,我创建了一个简单的测试文件来链接并构建它:
#include <iostream>
#include "libjson.h"
int main(int argc, const char * argv[])
{
// insert code here...
std::cout << "Hello, World!\n";
JSONNode n(JSON_NODE);
n.push_back(JSONNode("RootA", "Hello World"));
JSONNode c(JSON_ARRAY);
c.set_name("ArrayOfNumbers");
c.push_back(JSONNode("", 16));
c.push_back(JSONNode("", 42));
c.push_back(JSONNode("", 128));
n.push_back(c);
std::string jc = n.write_formatted();
std::cout << jc << std::endl;
return 0;
}当我尝试构建此文件时:
g++ -DNDEBUG main.cpp -ljson我明白了:
main.cpp:17:5: error: unknown type name 'JSONNode'
JSONNode n(JSON_NODE);
^
main.cpp:18:17: error: use of undeclared identifier 'JSONNode'
n.push_back(JSONNode("RootA", "Hello World"));
^
main.cpp:19:5: error: unknown type name 'JSONNode'
JSONNode c(JSON_ARRAY);
^
main.cpp:21:17: error: use of undeclared identifier 'JSONNode'
c.push_back(JSONNode("", 16));
^
main.cpp:22:17: error: use of undeclared identifier 'JSONNode'
c.push_back(JSONNode("", 42));
^
main.cpp:23:17: error: use of undeclared identifier 'JSONNode'
c.push_back(JSONNode("", 128));发布于 2013-12-23 06:12:57
在我意识到make过程有问题后,我从另一个SO question那里找到了答案。基本上,解决方案是将源代码复制到Xcode中,并将其作为项目的一部分进行构建,而不是尝试将其链接为库。
我还试图在一台ubuntu机器(12.04)上构建libjson 7.6.1,尽管做得很完美,但还是遇到了同样的问题。
https://stackoverflow.com/questions/20732685
复制相似问题