如何解決以下鏈接程序錯誤w.r.t jsoncpp operator =。jsoncpp運算符中未定義的引用=
我創建了一個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";
當我嘗試對與Ubuntu運14.04
未定義的參考`的Json默認libjsoncpp-dev的相關鏈接這給了下面的鏈接器錯誤:: Value :: operator =(Json :: Value)'
附加信息:
我編譯並鏈接到來自GitHub的最新jsoncpp時,沒有出現鏈接器錯誤。
value.h(被Ubuntu安裝易)在/ usr/include中/ jsoncpp/JSON有
Value &operator=(const Value &other);
和最新jsoncpp value.h有
Value &operator=(Value other);
您最好添加標籤'C++'和'C++ -11' – 2015-02-11 03:05:50
添加標籤 – satheeshram 2015-02-11 21:55:48
通常您需要使用與您最終想要鏈接的庫版本相同版本的頭文件進行編譯。如果您使用一個版本的頭文件進行編譯並鏈接到不同版本的庫,那麼就會發生不好的事情。如果你想能夠從Ubuntu 14.04鏈接到默認的libjsoncpp-dev,一定要使用這些頭文件。 – 2015-02-12 00:51:10