Panda 1.5.4 and VC 2008 error

Hi, I’m new and I have big problem with Panda3d 1.5.4. I use VC 2008 ExE, when I try compile “Hello world” I have errors.

errors:

1>------ Build started: Project: test, Configuration: Debug Win32 ------
1>Compiling...
1>test.cpp
1>c:\panda3d\include\parser-inc\iostream(32) : error C2059: syntax error : 'enum [tag]'
1>c:\panda3d\include\parser-inc\iostream(32) : error C2334: unexpected token(s) preceding '{'; skipping apparent function body
1>c:\panda3d\include\parser-inc\iostream(40) : error C2062: type 'long' unexpected
1>c:\panda3d\include\parser-inc\iostream(40) : error C2238: unexpected token(s) preceding ';'
1>c:\panda3d\include\parser-inc\iostream(52) : error C2062: type 'void' unexpected
1>c:\panda3d\include\parser-inc\iostream(52) : error C2238: unexpected token(s) preceding ';'
1>c:\panda3d\include\parser-inc\iostream(54) : error C2249: 'ios::streampos' : no accessible path to private typedef declared in virtual base 'ios'
1>        c:\panda3d\include\parser-inc\iostream(41) : see declaration of 'ios::streampos'
1>        c:\panda3d\include\parser-inc\iostream(38) : see declaration of 'ios'
1>c:\panda3d\include\parser-inc\iostream(55) : error C2249: 'ios::streampos' : no accessible path to private typedef declared in virtual base 'ios'
1>        c:\panda3d\include\parser-inc\iostream(41) : see declaration of 'ios::streampos'
[...]
1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdio.h(69) : see declaration of 'FILE'
1>c:\panda3d\include\parser-inc\stdtypedefs.h(50) : warning C4005: 'NULL' : macro redefinition
1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\stdio.h(123) : see previous definition of 'NULL'
1>c:\program files (x86)\microsoft visual studio 9.0\vc\include\xlocale(1865) : error C2664: '_CrtDbgReportW' : cannot convert parameter 4 from 'void *' to 'const wchar_t *'
1>        Conversion from 'void*' to pointer to non-'void' requires an explicit cast
1>c:\program files (x86)\microsoft visual studio 9.0\vc\include\xlocale(1890) : error C2664: '_CrtDbgReportW' : cannot convert parameter 4 from 'void *' to 'const wchar_t *'
1>        Conversion from 'void*' to pointer to non-'void' requires an explicit cast
1>c:\program files (x86)\microsoft visual studio 9.0\vc\include\xlocale(2137) : error C2664: '_CrtDbgReportW' : cannot convert parameter 4 from 'void *' to 'const wchar_t *'
1>        Conversion from 'void*' to pointer to non-'void' requires an explicit cast
1>c:\program files (x86)\microsoft visual studio 9.0\vc\include\xlocale(2172) : error C2664: '_CrtDbgReportW' : cannot convert parameter 4 from 'void *' to 'const wchar_t *'
1>        Conversion from 'void*' to pointer to non-'void' requires an explicit cast
1>c:\program files (x86)\microsoft visual studio 9.0\vc\include\xlocale(2420) : error C2664: '_CrtDbgReportW' : cannot convert parameter 4 from 'void *' to 'const wchar_t *'
1>        Conversion from 'void*' to pointer to non-'void' requires an explicit cast
1>c:\program files (x86)\microsoft visual studio 9.0\vc\include\xlocale(2454) : error C2664: '_CrtDbgReportW' : cannot convert parameter 4 from 'void *' to 'const wchar_t *'
1>        Conversion from 'void*' to pointer to non-'void' requires an explicit cast
1>c:\panda3d\include\dtoolbase_cc.h(102) : error C2872: 'ios' : ambiguous symbol
1>        could be 'c:\panda3d\include\parser-inc\iostream(38) : ios'
1>        or       'c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd(705) : std::ios'
1>c:\panda3d\include\dtoolbase_cc.h(102) : error C2039: 'openmode' : is not a member of 'ios'
1>        c:\panda3d\include\parser-inc\iostream(38) : see declaration of 'ios'
1>c:\panda3d\include\dtoolbase_cc.h(102) : error C2146: syntax error : missing ';' before identifier 'ios_openmode'
1>c:\panda3d\include\dtoolbase_cc.h(102) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\dtoolbase_cc.h(102) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\dtoolbase_cc.h(103) : error C2872: 'ios' : ambiguous symbol
1>        could be 'c:\panda3d\include\parser-inc\iostream(38) : ios'
1>        or       'c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd(705) : std::ios'
1>c:\panda3d\include\dtoolbase_cc.h(103) : error C2039: 'fmtflags' : is not a member of 'ios'
1>        c:\panda3d\include\parser-inc\iostream(38) : see declaration of 'ios'
1>c:\panda3d\include\dtoolbase_cc.h(103) : error C2146: syntax error : missing ';' before identifier 'ios_fmtflags'
1>c:\panda3d\include\dtoolbase_cc.h(103) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\dtoolbase_cc.h(103) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\dtoolbase_cc.h(104) : error C2872: 'ios' : ambiguous symbol
1>        could be 'c:\panda3d\include\parser-inc\iostream(38) : ios'
1>        or       'c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd(705) : std::ios'
1>c:\panda3d\include\dtoolbase_cc.h(104) : error C2039: 'iostate' : is not a member of 'ios'
1>        c:\panda3d\include\parser-inc\iostream(38) : see declaration of 'ios'
1>c:\panda3d\include\dtoolbase_cc.h(104) : error C2146: syntax error : missing ';' before identifier 'ios_iostate'
1>c:\panda3d\include\dtoolbase_cc.h(104) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\dtoolbase_cc.h(104) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\dtoolbase_cc.h(105) : error C2872: 'ios' : ambiguous symbol
1>        could be 'c:\panda3d\include\parser-inc\iostream(38) : ios'
1>        or       'c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd(705) : std::ios'
1>c:\panda3d\include\dtoolbase_cc.h(105) : error C2039: 'seekdir' : is not a member of 'ios'
1>        c:\panda3d\include\parser-inc\iostream(38) : see declaration of 'ios'
1>c:\panda3d\include\dtoolbase_cc.h(105) : error C2146: syntax error : missing ';' before identifier 'ios_seekdir'
1>c:\panda3d\include\dtoolbase_cc.h(105) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\dtoolbase_cc.h(105) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\panda3d\include\parser-inc\map(33) : error C2872: 'pair' : ambiguous symbol
[...]
1>c:\panda3d\include\typehandle.h(154) : error C2872: 'ostream' : ambiguous symbol
1>        could be 'c:\panda3d\include\parser-inc\iostream(50) : ostream'
1>        or       'c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd(708) : std::ostream'
1>c:\panda3d\include\typehandle.h(154) : error C2872: 'ostream' : ambiguous symbol
1>        could be 'c:\panda3d\include\parser-inc\iostream(50) : ostream'
1>        or       'c:\program files (x86)\microsoft visual studio 9.0\vc\include\iosfwd(708) : std::ostream'
1>c:\panda3d\include\typehandle.i(131) : error C2872: 'string' : ambiguous symbol
[...]
1>c:\panda3d\include\typehandle.i(264) : fatal error C1903: unable to recover from previous error(s); stopping compilation
1>Build log was saved at "file://c:\grafika 3d\test\test\Debug\BuildLog.htm"
1>test - 82 error(s), 1 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Pleas I need help :slight_smile:

I think you have (incorrectly) added the parser-inc directory to your INCLUDE search path. Don’t do that. The files in this directory are not intended to be read by any real compiler; they’re intended for the benefit of interrogate only.

David

I delete parser-inc, but i have new errors:

1>------ Build started: Project: test, Configuration: Debug Win32 ------
1>Compiling...
1>stdafx.cpp
1>Compiling...
1>test.cpp
1>Linking...
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall PandaFramework::close_framework(void)" (__imp_?close_framework@PandaFramework@@QAEXXZ) referenced in function _main
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall PandaFramework::main_loop(void)" (__imp_?main_loop@PandaFramework@@QAEXXZ) referenced in function _main
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class WindowFramework * __thiscall PandaFramework::open_window(void)" (__imp_?open_window@PandaFramework@@QAEPAVWindowFramework@@XZ) referenced in function _main
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall PandaFramework::set_window_title(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?set_window_title@PandaFramework@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function _main
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall PandaFramework::open_framework(int &,char * * &)" (__imp_?open_framework@PandaFramework@@QAEXAAHAAPAPAD@Z) referenced in function _main
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class BitMask<unsigned int,32> __cdecl BitMask<unsigned int,32>::lower_on(int)" (__imp_?lower_on@?$BitMask@I$0CA@@@SA?AV1@H@Z) referenced in function "void __cdecl `dynamic initializer for 'default_collision_node_collide_mask''(void)" (??__Edefault_collision_node_collide_mask@@YAXXZ)
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class BitMask<unsigned int,32> __cdecl BitMask<unsigned int,32>::bit(int)" (__imp_?bit@?$BitMask@I$0CA@@@SA?AV1@H@Z) referenced in function "void __cdecl `dynamic initializer for 'default_geom_node_collide_mask''(void)" (??__Edefault_geom_node_collide_mask@@YAXXZ)
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall PandaFramework::PandaFramework(void)" (__imp_??0PandaFramework@@QAE@XZ) referenced in function "void __cdecl `dynamic initializer for 'framework''(void)" (??__Eframework@@YAXXZ)
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall TypeHandle::TypeHandle(void)" (__imp_??0TypeHandle@@QAE@XZ) referenced in function "void __cdecl `dynamic initializer for 'private: static class TypeHandle CopyOnWriteObj1<class ov_multiset<class PandaNode::DownConnection,struct std::less<class PandaNode::DownConnection> >,class TypeHandle>::_type_handle''(void)" (??__E?_type_handle@?$CopyOnWriteObj1@V?$ov_multiset@VDownConnection@PandaNode@@U?$less@VDownConnection@PandaNode@@@std@@@@VTypeHandle@@@@0VTypeHandle@@A@@YAXXZ)
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall BitMask<unsigned int,32>::~BitMask<unsigned int,32>(void)" (__imp_??1?$BitMask@I$0CA@@@QAE@XZ) referenced in function "void __cdecl `dynamic atexit destructor for 'default_collision_node_collide_mask''(void)" (??__Fdefault_collision_node_collide_mask@@YAXXZ)
1>test.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall PandaFramework::~PandaFramework(void)" (__imp_??1PandaFramework@@UAE@XZ) referenced in function "void __cdecl `dynamic atexit destructor for 'framework''(void)" (??__Fframework@@YAXXZ)
1>C:\grafika 3d\test\Debug\test.exe : fatal error LNK1120: 11 unresolved externals
1>Build log was saved at "file://c:\grafika 3d\test\test\Debug\BuildLog.htm"
1>test - 12 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Looks like you’re missing libframework.dll.

David

In the case of the downloaded binaries, more likely libp3framework.dll.