Hi,
the JSON library used in CppMicroServices is an internal dependency
only. It cannot be consumed by clients.
You could try the Boost Property Tree library to parse your
configuration files.
Best,
Sascha
On 10/27/2017 09:04 PM, Alex Valcourt Caron wrote:
Hello,
I am presently writing my own module and plugin using MITK. I want to
read properties and configuration files written in the Json language
and know that a parser is available in the distribution.
I've tried to compile my reader, but keep having error message of
unresolved external symbols with the Json library (I've included the
trace at the bottom of the mail).
jsoncpp.h is included in the reader's .cpp file. I've tried to add
CppMicroService to the DEPENDS of my module too, since it contains the
third_party libraries, without success.
Trace :
--------------------------------------------------------------------------------------------------
VoxsimIOMimeTypes.obj : error LNK2019: symbole externe non résolu
"public: __thiscall Json::Value::Value(enum Json::ValueType)"
(??0Value@Json@@QAE@W4ValueType@1@@Z) référencé dans la fonction
"public: static bool __cdecl
mitk::VoxsimIOMimeTypes::canReadByJsonReader(class
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(?canReadByJsonReader@VoxsimIOMimeTypes@mitk@@SA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
2>VoxsimStructureReader.obj : error LNK2001: symbole externe non
résolu "public: __thiscall Json::Value::Value(enum Json::ValueType)"
(??0Value@Json@@QAE@W4ValueType@1@@Z)
2>VoxsimIOMimeTypes.obj : error LNK2019: symbole externe non résolu
"public: __thiscall Json::Value::~Value(void)" (??1Value@Json@@QAE@XZ)
référencé dans la fonction "public: static bool __cdecl
mitk::VoxsimIOMimeTypes::canReadByJsonReader(class
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(?canReadByJsonReader@VoxsimIOMimeTypes@mitk@@SA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
2>VoxsimStructureReader.obj : error LNK2001: symbole externe non
résolu "public: __thiscall Json::Value::~Value(void)"
(??1Value@Json@@QAE@XZ)
2>VoxsimIOMimeTypes.obj : error LNK2019: symbole externe non résolu
"public: __thiscall Json::Reader::Reader(void)"
(??0Reader@Json@@QAE@XZ) référencé dans la fonction "public: static
bool __cdecl mitk::VoxsimIOMimeTypes::canReadByJsonReader(class
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(?canReadByJsonReader@VoxsimIOMimeTypes@mitk@@SA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
2>VoxsimStructureReader.obj : error LNK2001: symbole externe non
résolu "public: __thiscall Json::Reader::Reader(void)"
(??0Reader@Json@@QAE@XZ)
2>VoxsimIOMimeTypes.obj : error LNK2019: symbole externe non résolu
"public: bool __thiscall Json::Reader::parse(class
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &,class Json::Value &,bool)"
(?parse@Reader@Json@@QAE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAVValue@2@_N@Z)
référencé dans la fonction "public: static bool __cdecl
mitk::VoxsimIOMimeTypes::canReadByJsonReader(class
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(?canReadByJsonReader@VoxsimIOMimeTypes@mitk@@SA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
2>VoxsimIOMimeTypes.obj : error LNK2019: symbole externe non résolu
"public: class std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> > __thiscall
Json::Reader::getFormattedErrorMessages(void)const "
(?getFormattedErrorMessages@Reader@Json@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
référencé dans la fonction
__catch$?canReadByJsonReader@VoxsimIOMimeTypes@mitk@@SA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z$0
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: __thiscall Json::Value::Value(int)"
(??0Value@Json@@QAE@H@Z) référencé dans la fonction "public: virtual
class std::vector<class itk::SmartPointer<class mitk::BaseData>,class
std::allocator<class itk::SmartPointer<class mitk::BaseData> > >
__thiscall mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: __thiscall Json::Value::Value(char const *)"
(??0Value@Json@@QAE@PBD@Z) référencé dans la fonction "public: virtual
class std::vector<class itk::SmartPointer<class mitk::BaseData>,class
std::allocator<class itk::SmartPointer<class mitk::BaseData> > >
__thiscall mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: __thiscall Json::Value::Value(class Json::Value const
&)" (??0Value@Json@@QAE@ABV01@@Z) référencé dans la fonction "void
__cdecl std::_For_each<class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> >(class
Json::ValueIterator,class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> &)"
(??$_For_each@VValueIterator@Json@@V<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@std@@YAXVValueIterator@Json@@0AAV<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: class Json::Value & __thiscall
Json::Value::operator=(class Json::Value const &)"
(??4Value@Json@@QAEAAV01@ABV01@@Z) référencé dans la fonction "public:
virtual class std::vector<class itk::SmartPointer<class
mitk::BaseData>,class std::allocator<class itk::SmartPointer<class
mitk::BaseData> > > __thiscall
mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: int __thiscall Json::Value::compare(class Json::Value
const &)const " (?compare@Value@Json@@QBEHABV12@@Z) référencé dans la
fonction "public: virtual class std::vector<class
itk::SmartPointer<class mitk::BaseData>,class std::allocator<class
itk::SmartPointer<class mitk::BaseData> > > __thiscall
mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: class std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> > __thiscall
Json::Value::asString(void)const "
(?asString@Value@Json@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
référencé dans la fonction "public: void __thiscall
<lambda_12a9d842cdccfce2a73d3945b92b09ad>::operator()(class
Json::Value)const "
(??R<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@QBEXVValue@Json@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: int __thiscall Json::Value::asInt(void)const "
(?asInt@Value@Json@@QBEHXZ) référencé dans la fonction "public: void
__thiscall <lambda_12a9d842cdccfce2a73d3945b92b09ad>::operator()(class
Json::Value)const "
(??R<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@QBEXVValue@Json@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: double __thiscall Json::Value::asDouble(void)const "
(?asDouble@Value@Json@@QBENXZ) référencé dans la fonction "public:
void __thiscall
<lambda_12a9d842cdccfce2a73d3945b92b09ad>::operator()(class
Json::Value)const "
(??R<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@QBEXVValue@Json@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: bool __thiscall Json::Value::isArray(void)const "
(?isArray@Value@Json@@QBE_NXZ) référencé dans la fonction "public:
virtual class std::vector<class itk::SmartPointer<class
mitk::BaseData>,class std::allocator<class itk::SmartPointer<class
mitk::BaseData> > > __thiscall
mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: unsigned int __thiscall Json::Value::size(void)const "
(?size@Value@Json@@QBEIXZ) référencé dans la fonction "public: void
__thiscall <lambda_12a9d842cdccfce2a73d3945b92b09ad>::operator()(class
Json::Value)const "
(??R<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@QBEXVValue@Json@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: class Json::Value & __thiscall
Json::Value::operator[](unsigned int)" (??AValue@Json@@QAEAAV01@I@Z)
référencé dans la fonction "public: void __thiscall
<lambda_12a9d842cdccfce2a73d3945b92b09ad>::operator()(class
Json::Value)const "
(??R<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@QBEXVValue@Json@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: class Json::Value & __thiscall
Json::Value::operator[](int)" (??AValue@Json@@QAEAAV01@H@Z) référencé
dans la fonction "public: void __thiscall
<lambda_12a9d842cdccfce2a73d3945b92b09ad>::operator()(class
Json::Value)const "
(??R<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@QBEXVValue@Json@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: class Json::Value __thiscall Json::Value::get(char
const *,class Json::Value const &)const "
(?get@Value@Json@@QBE?AV12@PBDABV12@@Z) référencé dans la fonction
"public: virtual class std::vector<class itk::SmartPointer<class
mitk::BaseData>,class std::allocator<class itk::SmartPointer<class
mitk::BaseData> > > __thiscall
mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: class Json::ValueIterator __thiscall
Json::Value::begin(void)"
(?begin@Value@Json@@QAE?AVValueIterator@2@XZ) référencé dans la
fonction "public: virtual class std::vector<class
itk::SmartPointer<class mitk::BaseData>,class std::allocator<class
itk::SmartPointer<class mitk::BaseData> > > __thiscall
mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: class Json::ValueIterator __thiscall
Json::Value::end(void)" (?end@Value@Json@@QAE?AVValueIterator@2@XZ)
référencé dans la fonction "public: virtual class std::vector<class
itk::SmartPointer<class mitk::BaseData>,class std::allocator<class
itk::SmartPointer<class mitk::BaseData> > > __thiscall
mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "protected: class Json::Value & __thiscall
Json::ValueIteratorBase::deref(void)const "
(?deref@ValueIteratorBase@Json@@IBEAAVValue@2@XZ) référencé dans la
fonction "void __cdecl std::_For_each<class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> >(class
Json::ValueIterator,class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> &)"
(??$_For_each@VValueIterator@Json@@V<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@std@@YAXVValueIterator@Json@@0AAV<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "protected: void __thiscall
Json::ValueIteratorBase::increment(void)"
(?increment@ValueIteratorBase@Json@@IAEXXZ) référencé dans la fonction
"void __cdecl std::_For_each<class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> >(class
Json::ValueIterator,class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> &)"
(??$_For_each@VValueIterator@Json@@V<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@std@@YAXVValueIterator@Json@@0AAV<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "protected: bool __thiscall
Json::ValueIteratorBase::isEqual(class Json::ValueIteratorBase const
&)const " (?isEqual@ValueIteratorBase@Json@@IBE_NABV12@@Z) référencé
dans la fonction "void __cdecl std::_For_each<class
Json::ValueIterator,class <lambda_12a9d842cdccfce2a73d3945b92b09ad>
>(class Json::ValueIterator,class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> &)"
(??$_For_each@VValueIterator@Json@@V<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@std@@YAXVValueIterator@Json@@0AAV<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: __thiscall Json::ValueIterator::ValueIterator(class
Json::ValueIterator const &)" (??0ValueIterator@Json@@QAE@ABV01@@Z)
référencé dans la fonction "class
<lambda_12a9d842cdccfce2a73d3945b92b09ad> __cdecl std::for_each<class
Json::ValueIterator,class <lambda_12a9d842cdccfce2a73d3945b92b09ad>
>(class Json::ValueIterator,class Json::ValueIterator,class
<lambda_12a9d842cdccfce2a73d3945b92b09ad>)"
(??$for_each@VValueIterator@Json@@V<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@@std@@YA?AV<lambda_12a9d842cdccfce2a73d3945b92b09ad>@@VValueIterator@Json@@0V1@@Z)
2>VoxsimStructureReader.obj : error LNK2019: symbole externe non
résolu "public: bool __thiscall Json::Reader::parse(class
std::basic_istream<char,struct std::char_traits<char> > &,class
Json::Value &,bool)"
(?parse@Reader@Json@@QAE_NAAV?$basic_istream@DU?$char_traits@D@std@@@std@@AAVValue@2@_N@Z)
référencé dans la fonction "public: virtual class std::vector<class
itk::SmartPointer<class mitk::BaseData>,class std::allocator<class
itk::SmartPointer<class mitk::BaseData> > > __thiscall
mitk::VoxsimStructureReaderService::Read(void)"
(?Read@VoxsimStructureReaderService@mitk@@UAE?AV?$vector@V?$SmartPointer@VBaseData@mitk@@@itk@@V?$allocator@V?$SmartPointer@VBaseData@mitk@@@itk@@@std@@@std@@XZ)
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users