C++ JSONCPP合并链接错误

C++ JSONCPP合并链接错误,c++,linker-errors,jsoncpp,C++,Linker Errors,Jsoncpp,我试图使用jsoncpp的合并版本(最新版本),但它会产生无法解决的外部符号链接错误。我使用的代码是 #include <json/json.h> int main(){ Json::Value root; return 0; } 可能您没有将JSONCPPs*.cpp文件包含到项目中(它们必须被编译和链接)。如果库被编译为静态库,则必须告诉链接器要链接什么。我在x64版本中尝试链接x86版本的JsonCpp时遇到了这个问题。我没有注意到Vcpkg的行为就好像定义了V

我试图使用jsoncpp的合并版本(最新版本),但它会产生无法解决的外部符号链接错误。我使用的代码是

#include <json/json.h>

int main(){
   Json::Value root;
   return 0;
}

可能您没有将JSONCPPs*.cpp文件包含到项目中(它们必须被编译和链接)。如果库被编译为静态库,则必须告诉链接器要链接什么。

我在x64版本中尝试链接x86版本的JsonCpp时遇到了这个问题。我没有注意到Vcpkg的行为就好像定义了
Vcpkg\u DEFAULT\u TRIPLET=x86 windows
,除非另有说明

发生这种情况时,我在构建日志中看到了以下条目

C:\Tools\vcpkg\installed\x86 windows\debug\lib\jsoncpp.lib:警告LNK4272:库计算机类型“x86”与目标计算机类型“x64”冲突[C:\projects\qpid proton\BLD\cpp\qpid proton cpp.vcxproj]


谢谢,我忘了做那件事。我还必须将assertions.h添加到mergalized.py,因为开发人员忘记了这样做,这导致了断言错误。是的,我必须将文件添加到:\jsoncpp-0.10.5\src\lib\u json中,以便链接错误消失!!!
1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall Json::Value::~Value(void)" (??1Value@Json@@QAE@XZ) referenced in function _main
1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall Json::Value::Value(enum Json::ValueType)" (??0Value@Json@@QAE@W4ValueType@1@@Z) referenced in function _main