VirtualBox

Changes between Version 3 and Version 4 of Windows build instructions


Ignore:
Timestamp:
Dec 15, 2006 4:34:29 PM (17 years ago)
Author:
jose
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Windows build instructions

    v3 v4  
    33== Prerequisites on Windows ==
    44
    5  * '''Visual C++ version 7.1 or 8.0''' (aka. Visual Studio .NET 2003 and 2005).
    6  * '''Windows Platform SDK''' coming with Visual C++ or a more recent one from: [[BR]] http://www.microsoft.com/downloads/details.aspx?FamilyId=484269E2-3B89-47E3-8EB7-1F2BE6D7123A&displaylang=en [[BR]] [[BR]]
    7  * '''DirectX SDK''': [[BR]]http://www.microsoft.com/downloads/details.aspx?FamilyID=d625324c-59b4-4951-849e-640b508dc442&DisplayLang=en [[BR]] [[BR]]
     5 * '''Visual C++ version 7.1 or 8.0''' (aka. Visual Studio .NET 2003 and 2005).
     6
     7 * '''Windows Platform SDK''' coming with Visual C++ or a more recent one from: [[BR]] http://www.microsoft.com/downloads/details.aspx?FamilyId=484269E2-3B89-47E3-8EB7-1F2BE6D7123A&displaylang=en
     8
     9 * '''DirectX SDK''': [[BR]]http://www.microsoft.com/downloads/details.aspx?FamilyID=d625324c-59b4-4951-849e-640b508dc442&DisplayLang=en
     10
    811 * '''MingW''': [[BR]]
    912 GCC 3.3.1: http://prdownloads.sf.net/mingw/gcc-core-3.3.1-20030804-1.tar.gz?download [[BR]]
     
    1215 W32API: http://prdownloads.sf.net/mingw/w32api-3.5.tar.gz?download [[BR]]
    1316 Binutils: http://prdownloads.sf.net/mingw/binutils-2.13.90-20021006-2.tar.gz?download [[BR]]
    14  ''Note that neither GCC v3.4.2 nor v3.4.5 is currently able to build a working recompiler. So, make sure you are using the 3.3.x versions! '' [[BR]] [[BR]]
     17 ''Note that neither GCC v3.4.2 nor v3.4.5 is currently able to build a working recompiler. So, make sure you are using the 3.3.x versions! ''
     18
    1519 * '''SDL v1.2.7 or later''' development package (VC6): [[BR]]http://www.libsdl.org/download-1.2.php
    1620
    1721=== Using Visual C++ 2005 Express Edition ===
    1822
    19 If you don't have a Visual C++ edition but still wish to build !VirtualBox, it is also possible to use the Visual C++ 2005 Express Edition. However, you will not be able to build everything. In fact the only front end that can be built with this toolset is VBoxBFE becase the !VirtualBox COM API - which all the other front ends program against - requires the Active Template Library (ATL) to build, and unfortunately the express edition doesn't include this (see http://msdn.microsoft.com/vstudio/express/support/faq/#vcpp).
     23If you don't have a Visual C++ edition but still wish to build !VirtualBox, it is also possible to use the [http://msdn.microsoft.com/vstudio/express/visualc/download/ Visual C++ 2005 Express Edition]. However, you will not be able to build everything. In fact the only front end that can be built with this toolset is VBoxBFE becase the !VirtualBox COM API - which all the other front ends program against - requires the Active Template Library (ATL) to build, and unfortunately the express edition doesn't include this (see http://msdn.microsoft.com/vstudio/express/support/faq/#vcpp).
    2024
    2125When doing the first build step, you have to add --with-VC-Express-Edition to the argument list:
    2226{{{
    2327cscript configure.vbs --with-VC-Express-Edition
    24 }}} 
    25 
    26 http://msdn.microsoft.com/vstudio/express/visualc/download/
     28}}}
    2729
    2830=== Qt ===
    2931
    30 The Qt !VirtualBox frontend (called VirtualBox.exe) is based on the Qt toolkit version 3.3.x. The GPL version of the Qt/Windows is version 4.x and to our knowlegde it (officially) only supports the MinGW compiler. In compiling the Qt frontend using MinGW one has to over come two road blocks:
     32The Qt !VirtualBox frontend (called {{{VirtualBox.exe}}}) is based on the Qt toolkit version 3.3.x. The GPL version of Qt/Windows is based on Qt 4.x and to our knowledge it (officially) only supports the MinGW compiler. When compiling the Qt frontend using MinGW one has to overcome two road blocks:
    3133 1. The code depends on ATL (again).
    3234 1. The C++ object layout differs so one would have to look into how g++ can call our COM interfaces.
    33 Now, both these roadblocks are solvable - (1) is just a lot of work and (2) is definintly possible (InnoTek has even created binary wrappers between these compilers before) - but we have not yet looked too deeply into it.
     35Now, both these roadblocks are solvable - (1) is just a lot of work and (2) is definitely possible (InnoTek has even created binary wrappers between these compilers before) - but we have not yet looked too deeply into it.
    3436
    3537All the code is there, feel free to try make it build and work.

© 2023 Oracle
ContactPrivacy policyTerms of Use