Page 3 of 3 FirstFirst 123
Results 21 to 27 of 27

Thread: collada-dom-2.2 Boost Dependences

  1. #21
    Junior Member
    Join Date
    Dec 2009
    Posts
    3

    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.

  2. #22
    Senior Member
    Join Date
    Aug 2004
    Location
    California
    Posts
    771

    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

  3. #23
    Junior Member
    Join Date
    Jul 2010
    Posts
    2

    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....ada-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.

  4. #24
    Junior Member
    Join Date
    Jul 2010
    Posts
    2

    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).

  5. #25
    Junior Member
    Join Date
    Jun 2011
    Posts
    7

    Re: collada-dom-2.2 Boost Dependences

    nereal,

    Do you think I am going to have any issues with this if I am running all of my paths in to the cloud. (Everything is there)

  6. #26
    Andruid
    Guest

    Re: collada-dom-2.2 Boost Dependences

    Hi,

    I'm trying to build the collada-dom-2.2 VC++ 2010 projects in C:\Program Files\Collada DOM\dom\projects\vc10-1.5 and I keep getting a compiler warning about "Unknown compiler version - please run the configure tests and report the results".

    I tried looking up the warning and the best I could find was some pages translated from japanese that suggested this was due to me having an out of date version of boost.

    I tried downloading the newest version of boost I could find which was boost_1_47_0.zip, but I didn't know what it was for or where it was supposed to go, so I tried adding NO_BOOST and NO_ZAE to Configuration Properties->C/C++->Preprocessor->Prerocessor Definitions in each project's properties.

    That's stopped the warning, but I still don't know what boost is for, what I'm supposed to do with it or if I even need it.

    I found some instructions on http://www.collada.org/mediawiki/index. ... l_Studio_4, but they seem to be from an earlier version and I expect I'd still need to let the collada projects know where the library gets built.

    Would I just do what's there and replace 8 with 9 and 9 with 10, or is this completely unrelated to what I'm trying to do? I haven't use boost before, so the only versions of it (and the other libraries) are what came with collada 2.2 and the boost_1_47_0.zip I mentioned before.

  7. #27
    Senior Member
    Join Date
    Aug 2004
    Location
    California
    Posts
    771

    Re: collada-dom-2.2 Boost Dependences

    You don't need Boost.

    Boost is a very popular set of C++ development libraries. You can learn more about it at http://www.boost.org/

Page 3 of 3 FirstFirst 123

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •