FreeWRL Windows Build
Doug Sanden and Michel Briand have been porting FreeWRL to the Windows platform. These notes allow us to follow their methods, and hopefully allow us to
expand the scope of the port.
There is still work to do; we are always looking for good volunteers. If you have the experience and the desire, please contact us.
last update: May 22, 2011.
There are two paths for you; try our binary installer, or get the full release version of FreeWRL.
Try the binary installer - look for the latest info on the Download page or go directly to freewrl-win32 folder on the freewrl sourceforge download page
2.1 Get Microsoft's Visual C/C++ compiler
We are using the free version of the Visual C/C++ compiler from Microsoft,
So far we have been building with the free express versions of Visual Studio, except for the activeX control plugin for InternetExplorer which needs a non-free Pro or Standard verion. In the freex3d subfolder you may see folders with names like projectfiles_vc7 (VS2003), _vc9 (VS2008), _vc10 (VS2010), _vc11 (VS2012), _vc12 (VS2013 desktop).
2.2 Get the FreeWRL Source
Navigate your web browser to the freewrl sourceforge download page
hit the Git tab and follow the download instructions there.
2.3 Get the pre-packaged support libraries
Doug Sanden has prepared a .zip package of libraries that are required for FreeWRL to function in MS Windows.
Download the MSVC Compatible Libraries
Get the bundle of MSVC compiled / compatible libs from
to freewrl-win32 folder , navigate to the latest version subfolder and look for a file with a name something like lib_windows.zip, download it and unzip it
and put the lib_windows directory at the same level/in the same directory as the source code directory freewrl ie c:/source/freewrl c:/source/lib_windows
(Note: there are now advertisements on SourceForge; the download will happen, but you might see a message "from our advertisers" on the main web page)
Download the Font Libraries
Get the fonts bundle from
unzip it into a fonts directory in the same directory as freewrl and lib_windows ie c:/source/fonts.
2.4 Build the source
You should be able to build the Debug version of lib and standalone projects.
Asuming you have the source code in:
You will find the Visual C project file in:
Also read the file MSVC_freewrl_notes.txt in the same directory for late breaking details on building for windows.
- Build the "libFreeWRL" Project first.
- Build the "freeWRL" or the whole "Solution" second.
The "libFreeWRLd.exe" file is required to be built first; you should follow the above order.
2.5 Move DLLs for execution
When you go to run it will complain about missing dlls.
Go into the lib_windows/ directories and copy the dlls from the dlls_copy_to_debug directory and put in the
2.6 Running FreeWRL
You should now be able to run FreeWRL in a number of ways.
From Visual Studio
If you click on the pull down menu "Debug", you should be able to bring up a blank FreeWRL window when you click on the "Start Debugging" icon.
From the command line
For example, assuming you have the source code in:
and a test file in your local directory called
You should be able to type, at the command prompt:
and it will run.
From a VRML or X3D file
You will find in the freewrl/freex3d/projectfiles_vc9/Debug directory that there is a FreeWRL executable.
You will also find in the freewrl/freewrl/tests directory a bunch of tests.
If you right click on one of the files, you can browse and assign the freewrl executable to that file type.
Doug Sanden created a launcher program which has a graphical user interface and some option checkmarks to create a command line string and launch freewrl - saving you a bit of typing.
There are 2 ways to get freeWRL_Launcher: 1) when you do a binary/.msi install and 2) by downloading the source files for launcher and building it. Either way there is a File > set freeWRL.exe path option that allows you to decide which .exe version of freewrl on your system to run, and you can pick the one in your Debug directory.
Debug mode is great, because it does a pretty good job of catching programming errors on our part. However, if you want faster execution, you may wish to redo the
Building FreeWRL in Debug mode steps, but:
- Go into the lib_windows/ directories and copy the dlls from the dlls_copy_to_release directory and put in the
- start up Visual Studio, and in the pull down menu "Build -> Configuration Manager", change both libFreeWRL and FreeWRL to "release" state from "debug" state;
- clean the libFreeWRL project, then build;
- clean the FreeWRL project, then build.
From circa 1999 to April 2010, the FreeWRL project was managed by John A. Stewart.
There is absolutely no warranty, express or implied for this
For details on the conditions of use, see the FreeWRL distribution.
FreeWRL is Copyright (C) 1998, 1999...2009 Tuomas J. Lukka,
John Stewart and others.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA