VirtualBox

Changes between Version 53 and Version 54 of Windows build instructions


Ignore:
Timestamp:
Jun 9, 2017 10:53:44 AM (7 years ago)
Author:
Frank Mehnert
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Windows build instructions

    v53 v54  
    2424 W32API: http://prdownloads.sf.net/mingw/w32api-3.5.tar.gz?download [[BR]]
    2525 Binutils: http://prdownloads.sf.net/mingw/binutils-2.13.90-20021006-2.tar.gz?download [[BR]]
    26  ''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]]
    2726 ''Use `--with-mingw32` and `--with-w32api=` to specify the path to configure.vbs.''
    2827
     
    3635
    3736 * '''SDL v1.2.7 or later''' development package (VC6): [[BR]]http://www.libsdl.org/download-1.2.php [[BR]]
    38  ''Use `--with-libsdl=` to specify the path for configure.vbs.''
     37 ''Use `--with-libsdl=` to specify the path for configure.vbs.'' [[BR]]
     38 ''Use `--disable-sdl` to disable the SDL frontend and to remove the dependency to SDL.''
    3939
    4040 * the '''libxml2''' library. Sources and 32bit binaries can be downloaded from: [[BR]]
     
    4444 * the '''zlib''' library. Grab the sources from: [[BR]]
    4545 http://www.zlib.net/ [[BR]]
    46  Actually the tarball includes `zlib` in the `src/libs/` directory so downloading this library is only necessary if you need a more recent version. In that case look for `SDK_VBOX_ZLIB_INCS` and `SDK_VBOX_ZLIB_LIBS` in Config.kmk and override these entries in your {{{LocalConfig.kmk}}} accordingly. See [#LocalConfig below] for some notes about using {{{LocalConfig.kmk}}} to override the default build configuration).
     46 Actually the tarball includes `zlib` in the `src/libs/` directory so downloading this library is only necessary if you need a more recent version. In that case look for `SDK_VBOX_ZLIB_INCS` and `SDK_VBOX_ZLIB_LIBS` in Config.kmk and override these entries in your `LocalConfig.kmk` accordingly. See [#LocalConfig below] for some notes about using `LocalConfig.kmk` to override the default build configuration).
    4747
    4848 * the '''cURL''' library. Grab the binaries from: [[BR]]
    4949 http://curl.haxx.se/download.html [[BR]]
    5050 (use the devel version ''without'' SSL support) [[BR]]
    51  ''Use `--with-libcurl=` to specify the path for configure.vbs. For building the 64-bit !VirtualBox target use `--with-libcurl32=` to specify the path to the 32-bit cURL development package as both cURL variants (32-bit and 64-bit) are required then.''
     51 ''Use `--with-libcurl=` to specify the path for configure.vbs. For building the 64-bit target you need to add `--with-libcurl32=` to specify the path to the 32-bit cURL development package as both cURL variants (32-bit and 64-bit) are required then.''
    5252
    5353 * '''OpenSSL 1.1.0'''. Grab the binaries from: [[BR]]
    5454 https://slproweb.com/products/Win32OpenSSL.html [[BR]]
    55  ''Use `--with-openssl=` to specify the path for configure.vbs. For building the 64-bit !VirtualBox target use `--with-openssl32=` to specify the path to the 32-bit OpenSSL development package as both OpenSSL variants (32-bit and 64-bit) are required then.''
     55 ''Use `--with-openssl=` to specify the path for configure.vbs. For building the 64-bit target you need to add `--with-openssl32=` to specify the path to the 32-bit OpenSSL development package as both OpenSSL variants (32-bit and 64-bit) are required then.''
    5656
    5757 * '''code signing utilities''' (64-bit Windows only). [[BR]]
     
    6363 * ''Optional:'' '''gSOAP 2.8.x''', only needed if you want to build the webservice API server. Grab the sources from: [[BR]]
    6464 http://sourceforge.net/projects/gsoap2/files/gSOAP/gSOAP%202.7.12%20stable/ [[BR]]
    65  Add `VBOX_PATH_GSOAP=/path/to/gsoap-VERSION/gsoap` and `VBOX_GSOAP_INSTALLED=1` to your {{{LocalConfig.kmk}}} file (no autodetection from configure.vbs).
     65 Add `VBOX_PATH_GSOAP=/path/to/gsoap-VERSION/gsoap` and `VBOX_GSOAP_INSTALLED=1` to your `LocalConfig.kmk` file (no autodetection from configure.vbs).
    6666
    6767 * ''Optional:'' '''Python 2.7.x''', only needed if you want to build Python API bindings, both webservice and COM. Grab the binaries from: [[BR]]
     
    9696cscript configure.vbs
    9797}}}
    98  If the script finds all the tools necessary, it will output two files: `AutoConfig.kmk` containing information where to find the tools on your system and `env.bat`, a batch file to setup your environment for building !VirtualBox. You only have to execute this step once, unless something about your tools changes in which case you have to repeat the above step. Keep in mind that the script always overwrites the two generated files so you should not manually edit them.
     98 If the script finds all the tools necessary, it will output two files: '''`AutoConfig.kmk`''' containing information where to find the tools on your system and '''`env.bat`''', a batch file to setup your environment for building !VirtualBox. You only have to execute this step once, unless something about your tools changes in which case you have to repeat the above step. Keep in mind that the script always overwrites the two generated files so you should not manually edit them.
    9999
    100  The default target will be the same target as the host, that is, on a 32-bit host the environment will be set up to compile the 32-bit !VirtualBox target while on a 64-bit host the environment will be set up to compile the 64-bit !VirtualBox target. The default setting can be overridden by using the `--target-arch=` parameter.
     100 The '''default target''' will be the same target as the host, that is, on a 32-bit host the environment will be set up to compile the 32-bit !VirtualBox target (`x86`) while on a 64-bit host the environment will be set up to compile the 64-bit !VirtualBox target (`amd64`). The default setting can be overridden by using the `--target-arch=` parameter.
    101101
    102102 2. Change to the root directory of the sources and enter our build shell environment: `env.bat`.
    103103
    104  3. To manually override any tool or change Config.kmk settings, create {{{LocalConfig.kmk}}} in the root directory of the sources and place the setting there. See [#LocalConfig below] for an incomplete of possible settings.
     104 3. To manually override any tool or change Config.kmk settings, create `LocalConfig.kmk` in the root directory of the sources and place the setting there. See [#LocalConfig below] for an incomplete of possible settings.
    105105
    106106 4. To build a release package, type `kmk`. This produces the binaries in `out\win.x86\release\bin` (or `out\win.amd64\release\bin` on 64-bit hosts). If you want to build a debug version, enter `kmk KBUILD_TYPE=debug`.
    107107
    108  5. To create an `.msi` package, type `kmk packing'.
     108 5. To create an `.msi` package, type `kmk packing'.[[BR]]
     109 This step will fail for a 64-bit (`amd64`) target if the Guest Additions are part of the build process (which is the default). It will complain about a dependency to `VBoxOGL*` libraries in `out\win.x86\release\bin\additions`. In that case, create the 32-bit Guest Additions by executing
     110{{{
     111kmk VBOX_ONLY_ADDITIONS KBUILD_TARGET_ARCH=x86
     112}}}
     113 After that, type `kmk packing` again and it should succeed.
    109114
    110115=== Using Visual C++ 2010 Express ===
     
    120125=== Excluding certain features from building === #LocalConfig
    121126
    122 Here is an incomplete list of settings which could be added to {{{LocalConfig.kmk}}}:
     127Here is an incomplete list of settings which could be added to '''`LocalConfig.kmk`''':
    123128 VBOX_WITH_ADDITIONS=::
    124129  Don't build the !VirtualBox Guest Additions.
     
    149154
    150155Part 3: building !VirtualBox with signing enabled
    151  1. If you called the certificate something other than !MyTestCertificate you'll have make the appropriate overrides in {{{LocalConfig.kmk}}}. See the {{{Code Signing}}} section of Config.kmk for what can be overridden.
    152  1. Add {{{VBOX_SIGNING_MODE=test}}} to {{{LocalConfig.kmk}}}.
     156 1. If you called the certificate something other than !MyTestCertificate you'll have make the appropriate overrides in `LocalConfig.kmk`. See the {{{Code Signing}}} section of Config.kmk for what can be overridden.
     157 1. Add `VBOX_SIGNING_MODE=test` to `LocalConfig.kmk`.
    153158 1. Build (incremental is sufficient).
    154159

© 2023 Oracle
ContactPrivacy policyTerms of Use