[vtkusers] Visual C++ Build

Kent Vander Velden graphix at iastate.edu
Thu Mar 1 22:36:16 EST 2001

  Hi.  I apologize for asking these questions since it likely one that has been
answered several time before or one that would be easy to answer if  Visual C++
was my normal build environment.

  I have build vtk-nightly from source code into a non-debug, non-incremental
dll.  Now, I am working on an application that uses vtk with in the Visual C++
environment.  First off, does either VTKDLL or VTKNODLL need to be defined in
the build of a user's application?  If so, what are they for?  They do not
seem to have an affect.

  Next, whenever I build with UNICODE defined (seems to be the default) I get 
a few undefined symbols at link time.  If I remove this define and rebuild 
the application links.  Any idea about this?  Did I build vtk incorrectly?

  Finally, when I link my application I get a message that libcmt conflicts
with other libraries and the suggestion is that I add a /nodefaultlibrary:
line to the link.  I am pretty sure that vtk was build as a multithreaded
dll.  My application can be built either way but I make no explicit use of
threads.  Another library, Qt, has been build as a single threaded dll.
Is there any harm in mixing single and multi threaded dlls like this?  Must
vtk be built as a multi-threaded dll?  Does it matter if my application is
built single or multi threaded?  

  Thanks for taking the time to read this.  I have spent a lot of time in
a trail and error mode building my application that was developed on Linux
in a Windows environment.  I just want to make certain that I am doing this
properly and that there will not be problems in the further as a result of a
hack that I did today.

Kent Vander Velden
kent at iastate.edu

More information about the vtkusers mailing list