Reply to topic  [ 25 posts ]  Go to page Previous  1, 2
collada-dom-2.2 Boost Dependences 
Author Message
Breeze

Joined: Tue Aug 04, 2009 5:45 am
Posts: 8
Post Re: collada-dom-2.2 Boost Dependences
I keep getting these two linking errors. I did everything as per the DOM guide.

Code:
1>libboost_system.lib(error_code.obj) : error LNK2019: unresolved external symbol __imp__strerror referenced in function "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall `anonymous namespace'::posix_error_category::message(int)const " (?message@posix_error_category@?A0xc21e9867@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z)

and
Code:
1>libboost_system.lib(error_code.obj) : error LNK2019: unresolved external symbol __imp___invalid_parameter_noinfo referenced in function "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall `anonymous namespace'::system_error_category::message(int)const " (?message@system_error_category@?A0xc21e9867@@UBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z)


Any advice, someone?


Mon Aug 10, 2009 12:55 am
Profile
Breeze

Joined: Tue Aug 04, 2009 5:45 am
Posts: 8
Post Re: collada-dom-2.2 Boost Dependences
Ok. I replaced

BOOST_ALL_NO_LIB
PCRE_STATIC
DOM_INCLUDE_LIBXML

with

DOM_DYNAMIC

in c++ - preprocessor - preprocessor definitions

and

libcollada14dom21-s.lib

with

libcollada14dom21.lib

in Linker - Input - Additional Dependencies

Still get
Code:
fatal error C1083: Cannot open include file: 'boost/version.hpp': No such file or directory   F:\Work_Aerrevan\collada-dom-2.2\collada-dom\dom\external-libs\boost\boost\config\auto_link.hpp   93

Any advice, please?


Mon Aug 10, 2009 1:51 am
Profile
Breeze

Joined: Tue Aug 04, 2009 5:45 am
Posts: 8
Post Re: collada-dom-2.2 Boost Dependences
Could anyone at least tell me what version of boost collada dom 2.2 uses? So I can manually edit the version.hpp file?

I keep getting
Code:
1>LINK : fatal error LNK1104: cannot open file 'libboost_filesystem-vc80-mt-s-1_37.lib'

If I manually edit the version.hpp file to version 1.36 I get
Code:
1>LINK : fatal error LNK1104: cannot open file 'libboost_filesystem-vc80-mt-s-1_36.lib'

I have no libboost_filesystem-*.lib file on my drive.

[Admin: expletive deleted]


Mon Aug 10, 2009 2:15 am
Profile
Collada
User avatar

Joined: Thu Jul 29, 2004 10:44 pm
Posts: 361
Location: Santa Clara
Post Re: collada-dom-2.2 Boost Dependences
ariesmoon wrote:
I must be missing something. There doesn't appear to be any downloadable content.
http://sourceforge.net/projects/opencollada/files/


It there http://opencollada.svn.sourceforge.net/ ... ada/trunk/ but it is not easy to find.


Mon Aug 10, 2009 10:49 am
Profile
Site Admin
User avatar

Joined: Wed Aug 04, 2004 4:28 pm
Posts: 615
Location: California
Post Re: collada-dom-2.2 Boost Dependences
You also don't need Boost to build the DOM.
Add -DNO_BOOST to your build.

_________________
Mark Barnes
Khronos COLLADA work group chairman
https://collada.org | http://khronos.org


Mon Aug 10, 2009 12:46 pm
Profile WWW
Air

Joined: Tue Dec 08, 2009 3:46 am
Posts: 1
Post Re: collada-dom-2.2 Boost Dependences
dom compile with -DNO_BOOST or DNO_BOOST but my app don't because of 'boost/version.hpp': No such file or directory
Their is no DNO_BOOST anywhere in dom, only NO_BOOST which break dom build.


Tue Dec 08, 2009 3:49 am
Profile
Site Admin
User avatar

Joined: Wed Aug 04, 2004 4:28 pm
Posts: 615
Location: California
Post Re: collada-dom-2.2 Boost Dependences
-D is a compiler command line option that defines a preprocessor symbol (e.g. NO_BOOST).

Code that depends on Boost should be wrapped in a conditional compilation block, e.g.

#ifndef NO_BOOST
#include "boost/version.hpp"
#endif

_________________
Mark Barnes
Khronos COLLADA work group chairman
https://collada.org | http://khronos.org


Wed Dec 09, 2009 4:40 am
Profile WWW
Air

Joined: Fri Jul 30, 2010 2:28 pm
Posts: 2
Post Re: collada-dom-2.2 Boost Dependences
I'm posting on this old thread because I just ran into the same problem, and after quite a bit of confusion reading everyone's posts I came upon a solution for building the libraries that I find to work pretty well (so far).

As Marcus pointed out, the libs can be built without Boost, which avoids the whole pitfall of trying to debug their compiler errors. I haven't looked very much at the code, so I'm not sure which functions I don't get access to without the Boost libs, but at this point I just wanted to get a working lib and begin working with the API in my own project.

Steps:

1) Download the latest DOM source here (use an SVN client like TortoiseSVN):
https://collada-dom.svn.sourceforge.net/svnroot/collada-dom/trunk/

2) In the archive, find the "collada-dom-2.2\collada-dom\dom\projects" folder. I decided to build for Collada spec version 1.4 in Visual Studio 8 (2005), so I opened the project file labelled "vc8-1.4". Regardless of the version, once you have the project open in Visual Studio, set these in the project properties:

Under "C/C++ > Preprocessor > Preprocessor Definitions" I have these added to the list:

NO_BOOST
NO_ZAE

*Note - NO_BOOST successfully discludes all the code which references the boost libraries, except for some of the code which relates to performing operations with compressed collada files. I didn't need this fuctionality so I just excluded it as well to get rid of the boost references. At this point I was able to build the DOM libs/dlls.

*Note - As I write this the latest version is labelled as v2.2 in , but the file name is still showing 2.1 in"Configuration Properties > Linker > General > Output File" (libcollada14dom21-d.dll instead of libcollada14dom22-d.dll ). As long as you reference the filename the same when you link to your project, it won't make a difference.



OK - So assuming you built the project using the guidelines above, you're ready to link DOM to your own project. Open the project and go to the Project Properties.

1) Under "C/C++ > General > Additional Include Directories" add some new entries into the list:
<FULL PATH TO COLLADA DOM FOLDER>\collada-dom-2.2\collada-dom\dom\include
<FULL PATH TO COLLADA DOM FOLDER>\collada-dom-2.2\collada-dom\dom\include\<VERSION OF COLLADA YOU WANT>

example:
C:\collada-dom-2.2\collada-dom\dom\include
C:\collada-dom-2.2\collada-dom\dom\include\1.4

2) Add these to "Preprocessor > Preprocessor Definitions" of your project:

DOM_DYNAMIC
NO_BOOST

*Note - DOM_DYNAMIC is only assuming you're linking the libs dynamically.

3) Add this line to "Linker > General > Additional Library Directores":

<FULL PATH TO COLLADA DOM FOLDER>\collada-dom-2.2\collada-dom\dom\build\<VS VERSION FOLDER>

example:
C:\collada-dom-2.2\collada-dom\dom\build\vc8-1.4-d

4) Add this line to "Linker > Input > Additional Dependencies":
libcollada<collada version>dom<domversion><debug or release tag>.lib
example:
(collada version 1.4 dom version 2.2 debug lib build)
libcollada14dom22-d.lib

*Again, if you're building the latest 2.2 build, your file name might be different so check on it.

5) Finally make sure you #include <dae.h> and any other headers you may need in your project source file. There's more on that in the Wiki.

At this point I was able to build my project and I successfully called some of the simple API calls, such as in the example here:
http://collada.org/mediawiki/index.php/ ... _documents

I hope this helps save some other people some time.


Fri Jul 30, 2010 3:20 pm
Profile
Air

Joined: Fri Jul 30, 2010 2:28 pm
Posts: 2
Post Re: collada-dom-2.2 Boost Dependences
*One other note - don't forget to add the folder containing the libs into the PATH environment variable (or copy the files into the same directory as your own project executable).


Mon Aug 02, 2010 2:11 pm
Profile
Air

Joined: Thu Sep 09, 2010 12:45 am
Posts: 1
Post Re: collada-dom-2.2 Boost Dependences
"dae.h" started to include libboost header file with the ZAE feature implementation in September 2008.

I updated "DOM guide: Setting up" to include the steps necessary to include libboost in one's project.

Thanks for the input.

_________________
UGG Bailey Button Boots
UGG Classic Mini Boots


Thu Sep 09, 2010 12:55 am
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 25 posts ]  Go to page Previous  1, 2

Who is online

Users browsing this forum: Google [Bot] and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.