INSTALL.md
changeset 13881 99b265e0d1d0
parent 13713 20768d813518
child 14289 12618cd83af8
equal deleted inserted replaced
13880:5f819b90d479 13881:99b265e0d1d0
    22 - SDL >= 2.0
    22 - SDL >= 2.0
    23 - SDL\_net >= 2.0
    23 - SDL\_net >= 2.0
    24 - SDL\_mixer >= 2.0
    24 - SDL\_mixer >= 2.0
    25 - SDL\_image >= 2.0
    25 - SDL\_image >= 2.0
    26 - SDL\_ttf >= 2.0
    26 - SDL\_ttf >= 2.0
       
    27 - PhysFS >= 3.0.0
    27 
    28 
    28 ### Recommended optional dependencies
    29 ### Recommended optional dependencies
    29 
    30 
    30 These are not strictly required to build Hedgewars, but it's
    31 These are not strictly required to build Hedgewars, but it's
    31 usually better to have them installed. Hedgewars has fallback mechanisms
    32 usually better to have them installed. Hedgewars has fallback mechanisms
    32 in if these are not found on your system.
    33 in if these are not found on your system.
    33 
    34 
    34 - qtstyleplugins (for Qt 5)
    35 - qtstyleplugins (for Qt 5)
    35 - PhysFS >= 2.0.0
       
    36 - Lua = 5.1.0
    36 - Lua = 5.1.0
    37 
    37 
    38 ### Optional dependencies
    38 ### Optional dependencies
    39 
    39 
    40 For some additional features, you can optionally install these dependencies:
    40 For some additional features, you can optionally install these dependencies:
    44 - For video recording:
    44 - For video recording:
    45     - FFmpeg or Libav
    45     - FFmpeg or Libav
    46 - For the Hedgewars Server:
    46 - For the Hedgewars Server:
    47     - GHC >= 6.10
    47     - GHC >= 6.10
    48     - Various Haskell packages (see below)
    48     - Various Haskell packages (see below)
    49 
       
    50 PhysFS will be internally built if `-DPHYSFS_SYSTEM=OFF` is passed to `cmake`
       
    51 (also allows to set `PHYSFS_LIBRARY` and `PHYSFS_INCLUDE_DIR` if needed).
       
    52 
    49 
    53 Lua will be automatically built if not found.
    50 Lua will be automatically built if not found.
    54 
    51 
    55 ### Hedgewars Server dependencies
    52 ### Hedgewars Server dependencies
    56 
    53 
   121 Important CMake options:
   118 Important CMake options:
   122 
   119 
   123 - `CMAKE_INSTALL_PREFIX`: Installation directory
   120 - `CMAKE_INSTALL_PREFIX`: Installation directory
   124 - `NOSERVER`: Set to `ON` to *not* build the server
   121 - `NOSERVER`: Set to `ON` to *not* build the server
   125 - `NOVIDEOREC`: Set to `ON` to *not* build the video recorder
   122 - `NOVIDEOREC`: Set to `ON` to *not* build the video recorder
   126 - `SYSTEM_PHYSFS`: Set to `OFF` to use Hedgewars-bundled PhysFS
       
   127 
   123 
   128 ### Step 2: Make
   124 ### Step 2: Make
   129 
   125 
   130 Run:
   126 Run:
   131 
   127 
   156 
   152 
   157 (Replace `<path_to_qmake>` with the path to the `qmake` application.)
   153 (Replace `<path_to_qmake>` with the path to the `qmake` application.)
   158 
   154 
   159 If this didn't work, make sure you have the correct Qt version
   155 If this didn't work, make sure you have the correct Qt version
   160 (see above).
   156 (see above).
   161 
       
   162 ### Hedgewars compiles successfully, but games instantly crash the map preview fails
       
   163 
       
   164 This is likely to be a problem with PhysFS. Try to build Hedgewars
       
   165 with the Hedgewars-bundled PhysFS by setting the CMake option
       
   166 `SYSTEM_PHYSFS=OFF`, then try to run `make` again.
       
   167 
       
   168 If the _bundled_ PhysFS fails, too, this is likely to be a bug in
       
   169 Hedgewars, please report at <https://issues.hedgewars.org/>.
       
   170 
   157 
   171 ### Broken/missing Haskell dependencies
   158 ### Broken/missing Haskell dependencies
   172 
   159 
   173 First, try to obtain the missing Haskell packages and make sure GHC
   160 First, try to obtain the missing Haskell packages and make sure GHC
   174 is up-to date, then try again. Read the error messages carefully
   161 is up-to date, then try again. Read the error messages carefully