To build your static COLLADA-DOM lib, you’ll need to
add “…\external-libs\boost” (or the correct path to dom\external-libs\boost) to Additional include directories of your application project file, this was already included in the dom-static project file.
define “BOOST_ALL_NO_LIB” in Preprocessor Definitions of your application project file. This was already included in the dom-static project file. See the following explaination:
// BOOST_ALL_NO_LIB: Tells the config system not to automatically select
// which libraries to link against.
// Normally if a compiler supports #pragma lib, then the correct library
// build variant will be automatically selected and linked against,
// simply by the act of including one of that library’s headers.
// This macro turns that feature off.
// #define BOOST_ALL_NO_LIB
add the following two static boost libs to the Linker Additional Dependencies of your app project file
These two libs are included in collada-dom-2.2, so the users do not need to download boost themselves
PS. In the “DOM guide: Setting up” we must build libcollada14dom22-s.lib (release) or libcollada14dom22-sd.lib (debug) but i had only libcollada15dom21-s.lib
Regarding the colladadom version issue (i.e. 21 or 22), the dom package 2.2 was released without the dom project file updated to the new file name (libcollada15dom22-s.lib). You can just use libcollada15dom21-s.lib, or modify the output name in the dom-static project file to libcollada15dom22-s.lib, or sync with the latest collada-dom from
You can fix your “unresolved external symbol” errors by opening the dom-static project and adding daeZAEUncompressHandler.cpp to the Source Files folder. Then recompile the project. It appears they simply forgot to include that file in the project even though it clearly exists in the source directory.
I would like to use the most recent boost libraries.
I am using MSVC9.
I have tried to simply use the projects included with the Collada DOM 2.2 download. However, if I don’t use the boost libraries included with Collada I get unresolved externals for both libraries. If I use the libraries included with Collada I get multiply defined symbols.
My only choice seems to alter the included msvc projects to use my release of the boost libraries so that there are no conflicts.
Can you add instructions for those who already have boost installed which may or may not be a different version that of the boost libraries included with Collada DOM 2.2?
In my case the dom-static project compiled perfectly but the libraries have proven to be unusable along side boost version 1.38, the current latest version.
Please consider my case as I suspect it is a general problem.
If you already have Boost installed and would like to use the release you have without conflicts elsewhere in your project or if you wish to use a newer version of the Boost libraries than is packaged with Collada DOM 2.2 you may with MSVS with the following instructions.
You must compile Collada DOM 2.2 against the release of the Boost libraries you have installed.
To do this you must change some project property settings. The directions are the same for release and debug configurations.
Remove the preprocessor directive: BOOST_ALL_NO_LIB
Remove additional include directory: …\external-libs\boost
Remove the Linker Additional Dependencies: libboost_filesystem.lib;libboost_system.lib (-d variants for debug)
So long as MSVS is aware of your Boost installation Collada DOM 2.2 will compile against the release of Boost you have installed.
!!! Run the domTest’s !!!
If all test’s pass then everything is fine. If any of the tests fail you can recompile Collada DOM 2.2 with the Boost libraries included with it. However, any projects using Collada DOM 2.2 and Boost will now have to compile and link against the libraries included with Collada DOM 2.2 instead of those installed with your own Boost release. In other words, your project will have to conform to the project settings for compiling Collada DOM 2.2.
Hi. I’m having some trouble setting up collada dom.
Perhaps someone can offer some suggestions?
I’m using Microsoft Visual C++ 2005
I tried static linking as per the “DOM guide: Setting up” and the various instructions in this thread. I gave up.
Now I’d settle gladly for dynamic linking and shipping the libcollada14dom21.dll with the applications.
and #include <dom/domCOLLADA.h>
I get the following error
collada-dom-2.2\collada-dom\dom\external-libs\boost\boost/config/auto_link.hpp(93) : fatal error C1083: Cannot open include file: ‘boost/version.hpp’: No such file or directory.
version.hpp doesn’t exist.
If I get it off the link JAre posted I get the same message he did:
I mean no harm. I just want to be able to parse Collada files.
Should I try FCollada instead? I don’t even know where to get it.
another option could be OpenCOLLADA (Stream/SAX based parsing, faster, no memory consumption) available at http://sf.net/projects/opencollada
There is no boost dependency for the parsing part required.