我想用C++學習YAML,我使用CMake將給定的yaml-cpp文件與VC++ Express 2010做成.dll和.lib文件。我已經建立了我的項目,就像我設置其他類似SFML的庫一樣。YAML與VC++ 2010將編譯爲發佈,但不是調試
我的問題是,當我嘗試建立對YAML-CPP網站給出的示例代碼的發佈版本,我得到:
Ogre
Dragon
Wizzard
但是,當我嘗試建立一個調試版本,我得到:
Assertion failed: false, file d:\microsoft visual studio 10.0\vc\include\yaml-cp
p\nodeimpl.h, line 39
我不知道該如何處理。我是否需要構建庫的調試版本?如果是,如何?我不知道哪些項目選項可能會影響這個,如果我設法改變一些東西。
當我編譯,我得到一個警告:
d:\microsoft visual studio 10.0\vc\include\yaml-cpp\conversion.h(51): warning C4146: unary minus operator applied to unsigned type, result still unsigned
有了很多的模板打印輸出,F.E. :
1> d:\microsoft visual studio 10.0\vc\include\yaml-cpp\nodereadimpl.h(35) : see reference to function template instantiation 'bool YAML::ConvertScalar<T>(const YAML::Node &,T &)' being compiled
1> with
1> [
1> T=unsigned int
1> ]
這是我的問題嗎?壞的CMake文件和編譯?
你可以發佈斷言發生的調用堆棧嗎? – 2012-01-17 01:53:30