Building POV-Ray* with Intel® C++ Compiler

Introduction


This guide is intended to help users of the Intel® C++ Compiler for Windows* to build Povray*.

Version information


This guide applies to Povray* beta version 3.7 and the Intel® C++ Compiler 11.0 for Windows.

Application notes


The Persistence of Vision Raytracer, or POV-Ray, is a high-quality ray-tracing program for creating stunning three-dimensional graphics.

Povray 3.7 in addition has SMP (symmetric multiprocessing) support, which allows the renderer to run on as many CPU's (or cores) as you have installed on your machine. This will be particularly useful for users who intend to purchase a dual-core CPU or who already have a two (or more) processor machine.

Though Povray  can be used on many platforms, this particular guide is intended for Windows. More information about Povray can be found at:

http://www.povray.org/

Obtaining the source code


The source code, along with Microsoft* Visual Studio* project files for the Intel® compiler can be found at:

http://www.povray.org/beta/†  †

The solution files are targeted for Visual Studio* 2005. Versions prior to VS 2005 (8.0) are not supported.

Obtaining the latest version of the Intel® compilers


Licensed users of the Intel compilers may download the most recent versions of the compiler from the Intel download center which is accessed by logging into your account at the Intel® Registration Center .

Evaluation versions of the Intel compilers may be found at the Intel® Evaluation Software Center.

Prerequisites


Hardware: This note has been tested on Intel® Pentium® M processors.

Software: This note applies to use of version 11.0 of the Intel® C++ Compiler for Windows. It is assumed that the reader will be using Visual Studio (2005 or newer) to build Povray. This note has been tested with Visual Studio 2005 Professional Edition.

Configuration and set-up information


In order to use the provided project files you will need Visual Studio version 2005 or later and have the Intel C++ Compiler installed. To ensure that the Intel compiler works properly within Visual Studio, the Intel compiler should be installed after Visual Studio. The project files provided are already configured to use the Intel® compiler. The examples and screen captures shown in this document reflect the Visual Studio 2005 environment.

Source code changes


No source code changes are required to build Povray except removing one directive which is explained in the Build steps section.

Building Povray


    1. Install working Binary of Povray 3.7 beta supplied by the POV-Team. This ensures appropriate registry settings needed for the compiled binary to run properly. It can be downloaded from http://www.povray.org/beta/
    2. Install Boost 1.34.1 using BoostPro 1.34.1 Installer. You can download the installer from: http://www.boostpro.com/download/. This provides the headers and pre-compiled version of the thread libraries required by Povray 3.7 beta. Any version other than 1.34.1 is not recommended.
      • After Boost libraries are installed you need to ensure that the path to its include and library files are set up in the Visual Studio's global Settings. Note: The method mentioned here is tagged as an alternative way in the readme file of Povray. But this method also works fine.
      • From Tools menu in Visual Studio, select Options. A dialogue as shown below appears. Expand 'Projects and Solutions' and Select 'VC++ Directories' sub-item.

      • Select Library Files from the right side drop-downbox, and add appropriate path to Boost Lib files. If the Boost libraries were installed using installer then probably the default path would be under Program Files ( as shown )

        PovrayLib.JPG

      • Then Select Include Files from the same drop down box and add path to the root directory of Boost i.e. by default  C:\Program Files\boost\boost_1_34_1

        PovrayIncl.JPG

    3. From the downloaded source files , Open windows\vs8\povray.sln in vs2005. Set povwin as the startup project if it is not.
  • In povcore project expand 'Backend Headers' then open the file 'povray.h' listed within it. Set the DISTRIBUTION_MESSAGE_2' as your name. This comes under their policy to make unofficial version distinguishable from each other. Remove the #error directive afterwards otherwise you will get compile time errors.

    PovrayErrorDirec.JPG

  • Build the whole solution with VS2005. If you dont encounter any errors, change the solution to build it with Intel Compiler. Select the desired build ( debug, release, release sse2) .(Note: SSE-2 will give link errors For further information see known issues and limitations section below).

  • You may encounter link error that says: "Cannot open libboost_thread-iw-mt-sgd-1_34_1.lib” For this: Go to C:\Program Files \boost\boost_1_34_1\lib. Make a copy of libboost_thread-Vc80-mt-sgd-1_34_1.lib and rename it to above file. Do same for libboost_thread-Vc80-mt-s-1_34_1.lib.

  • After the solution builds successfully, Povray executable will be placed in the windows\vs8\bin32 directory. The names of executable will depend on configuration that is used. For the Release SSE2 configuration the exe generated will be pvengine32-sse2.exe (for 32bit build).

  • For more information or if you run into any problems please refer to the readme file: http://www.povray.org/beta/source/povwin-src-readme.html. This file also comes with Povray Source code.

  • For Visual Studio 2008 Users additional steps need to be followed:

  • Right Click 'povwin' project , choose properties then expand Configuration Properties followed by C/C++ and then Preprocessor.

    PovrayVS2008.JPG

  • Change the values of WINVER and _ WIN32_WINNT to the appropriate value depending on the OS version. Note: VS2008 does not support any version of Windows prior to Windows 2000.

  • The values to be set can be found at: http://msdn2.microsoft.com/en-us/library/6sehtctf.aspx

  • Also Boost 1.34.1 requires minor patches to work with Visual Studio 2008. Refer to this link for the patch: http://www.nabble.com/Re%3A-Preliminary-0.9.0-tarballs---VC%2B%2B-2008-Express-p14161224.html

  • When you run the Compiled executable system pops up a 'Pov-Ray Editor error' dialog box showing "Editor DLL initialization failed [LoadLibrary failed, code is 000000007e]". Click 'ok' button and another box pops up showing "See the 'Internal Editor Reference' section in the help file". To get rid of this message box build all the projects from the solution as shown below.

  • Right click the Povray Solution and click Properties. Expand the Configuration Properties. On the Configuration page check cmedit and codemax projects for the desired build as shown below. And re-build the whole solution.

    PovrayBuildall.JPG

Known issues and limitations


Currently SSE build is not supported by Intel* compiler version 11.0.66 and previous versions. This issue is been fixed and should be in the next update after 11.0.066.

 

 

 

 

Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione