sat*_*ram 5 c++ jsoncpp c++11 ubuntu-14.04
如何解决以下链接器错误 wrt jsoncpp operator=.
我创建了一个Json::Value这样的对象
Json::Value pt;
pt["type"] = 5;
pt["uuid"] = "f8c74622-d45e-4cfa-fe00-5e7042431c72";
pt["start frame"] = 10;
pt["duration"] = 20;
pt["payload"] = "aedddefffsadf";
Run Code Online (Sandbox Code Playgroud)
当我尝试链接 Ubuntu 14.04 附带的默认 libjsoncpp-dev 时,会出现以下链接器错误
对`Json::Value::operator=(Json::Value)'的未定义引用
额外信息:
当编译并链接到来自 GitHub 的最新 jsoncpp 时,我没有收到此链接器错误。
/usr/include/jsoncpp/json 中的 value.h(由 ubuntu apt 安装)有
Value &operator=( const Value &other );
Run Code Online (Sandbox Code Playgroud)
和最新的 jsoncpp value.h 有
Value &operator=(Value other);
Run Code Online (Sandbox Code Playgroud)
Debian 附带jsoncpp-0.6.0-rc2. 我敢打赌 Ubuntu 也是如此。
只需切换到jsoncpp-0.8.z,它与.0.6.0-rc21.y.z
实际上 Debian 目前正在切换0.8.z。在 Ubuntu 更新其发布版本之前,您可能必须避免新功能(主要是Builders),而使用已弃用的 Readers/Writers ,这可能是您已经在做的事情。所以你应该很容易让一切正常运转。
| 归档时间: |
|
| 查看次数: |
4124 次 |
| 最近记录: |