Download
The following are Windows installers for various popular and useful open-source libraries, including:
- VTK 5.0.1 -- the powerful and flexible Visualization Toolkit, full of 3D representation and image
processing goodness
- wxWidgets 2.6.2 -- a fully-featured, well-documented, application framework
- DCMTK 3.5.4 -- an impressively deep open-source DICOM toolkit
- libxml2 2.6.22 and libxslt 1.1.15 -- XML processing from GNOME.
They are
built with Inno Setup, an excellent free
installer builder for Windows.
Included in each installer is the full source code, the libraries themselves, the build
scripts and the pdb files for the debug versions. As such, you should be able to simply
start developing against these libs without further ado. The only thing you may not be
able to do with these libs is actually rebuild them in place, although this hasn't been
tested. If you need a custom version, you should probably go to the appropriate website
and download clean source code to do a build from scratch.
All of these libraries are used in projects developed for clients by Predictive Patterns,
and as such the build settings reflect our prejudices. They are built using Visual C++ 2005,
and at some future date will probably be replaced by ones built with Visual C++ 2008. Please
send us e-mail if you'd like that.
Most importantly, all of these are static libraries that are statically linked
against the C runtime libs.
This is inconvenient for users who are used to everything automagically picking up DLLs,
but for the purposes of professional software development static linking has some big
advantages. Primarily, it ensures that your clients and customers are running the code
you shipped, and not some different code that may have subtle bugs and issues. In these
days of ubiquitous high-bandwidth connections and hard drives getting up into the low
terabytes, having ten copies of similar (but rarely
identical!) library code complied into ten different applications is just not a big deal.
Ensuring robustness and reliability is.
Again, if you'd like to see these libs available as DLLs, or even dynamically linked static
libs, please send us e-mail.
Generic Install Instructions
- Download
- Run
- Reboot
Each installer sets an environment variable to make it easy to point to these libs in your
build scripts. For some reason, although the variable gets set properly by the installer, either
a reboot is required, or you have to go to the Control Panel->System Properties->Advanced->Environment Varaibles
and just click OK. Until you do that, the new environment variables are not picked up by the system.
In any case, if you are installing more than one of these libs, there is no point in rebooting
until the last one is done. NOTE that the environment variables are set ONLY for the user who does
the install, NOT all users.
Speaking of build scripts, we use CMake, and you
should too.
Most of these libraries use CMake as well, and as part of the install process the CMake files are re-written
to make it look like the libs were built wherever you installed them. This allows the settings on these
libs to be picked up by your CMake scripts. You may get error messages when doing this, particularly
on VTK, which complains about the use of static runtime libs. Despite the dire language of the
error messages, you can safely ignore them.
Specific instructions are included alongside each of the links below. If you have any problems, please
don't hesistate to send us e-mail. There is a very
limited amount of direct support we can supply for free downloads like this, but this is intended to
be a useful service, and we'd like to know if people are having problems.
Libraries
VTK 5.0.1- The installer will set the VTK_DIR environment
variable, so you should just use FIND_PACKAGE(VTK) in your CMakeLists.txt file and then use the usual
CMake commands to add VTK_INCLUDE_DIRS etc. VTK can be downloaded in full
from: Kitware. VTK is distributed under
the VTK license, which is a modified BSD license.
This installer is built from an unmodified 5.0.1 version, and is supplied as a convenience.
The MD5 checksum for this installer is: MD5(vtk_5.0.1_setup.exe)= 62b6a52a851a99f7561b792f02054b61
wxWidgets 2.6.2- The installer will set the WXWIN
environment variable. I typically handle wxWidgets in my CMake scripts with something like:
STRING(REGEX REPLACE "\\\\" "/" WX_DIR "$ENV{WXWIN}")
FIND_PACKAGE(wxWidgets)
IF (WXWINDOWS_FOUND)
ADD_DEFINITIONS(${CMAKE_WXWINDOWS_CXX_FLAGS} ${WXWINDOWS_DEFINES})
ELSE (WXWINDOWS_FOUND)
MESSAGE("Could not find wxWidgets")
ENDIF(WXWINDOWS_FOUND)
The source code for wxWidgets is available for download at: wxWindows License, which is
a commerically-friendly L-GPL variant. The wxWidgets book
is highly recommended. For this installer, MD5(wx_widgets_2.6.2_setup.exe)= 4001be903aec51a471e5278320d0b309
DCMTK 3.5.4- The installer sets the environment variable DCMTK_DIR, which can be
accessed by CMake as usual:
STRING(REGEX REPLACE "\\\\" "/" DCMTK_DIR "$ENV{DCMTK_DIR}")
The source code for DCMTK is available at the OFFIS website, and the license is
permissive:
/*
* Copyright (C) 1994-2005, OFFIS
*
* This software and supporting documentation were developed by
*
* Kuratorium OFFIS e.V.
* Healthcare Information and Communication Systems
* Escherweg 2
* D-26121 Oldenburg, Germany
*
* THIS SOFTWARE IS MADE AVAILABLE, AS IS, AND OFFIS MAKES NO WARRANTY
* REGARDING THE SOFTWARE, ITS PERFORMANCE, ITS MERCHANTABILITY OR
* FITNESS FOR ANY PARTICULAR USE, FREEDOM FROM ANY COMPUTER DISEASES OR
* ITS CONFORMITY TO ANY SPECIFICATION. THE ENTIRE RISK AS TO QUALITY AND
* PERFORMANCE OF THE SOFTWARE IS WITH THE USER.
*
* Copyright of the software and supporting documentation is, unless
* otherwise stated, owned by OFFIS, and free access is hereby granted as
* a license to use this software, copy this software and prepare
* derivative works based upon this software. However, any distribution
* of this software source code or supporting documentation or derivative
* works (source code and supporting documentation) must include the
* three paragraphs of this copyright notice.
*
*/
For this installer: MD5(dcmtk_libs_3.5.4_setup.exe)= f0639909e8c43740f652215960a5cfec
libxml2 2.6.22 and libxslt 1.1.15- This installs both
libxml2 2.6.2 and libxslt 1.1.15 from the GNOME project.. There
is another pre-built version of libxml2 available,
and you might want to look at it as well. It is linked against the dynamic runtime, unlike the
version available here. This installer sets the environment variable LIBXML2_DIR, which can be
accessed in CMake via:
STRING(REGEX REPLACE "\\\\" "/" LIBXML2_DIR "$ENV{LIBXML2_DIR}")
The library is distributed under the MIT license. For this
installer, MD5(xml2_libs_2.6.22_setup.exe)= 19e6a7bcd9aff30b76b57b5790906928
|