]> git.lizzy.rs Git - minetest-m13.git/blob - README.txt
Update code style to C++11
[minetest-m13.git] / README.txt
1 Minetest-c55
2 ---------------
3 An InfiniMiner/Minecraft inspired game.
4 Copyright (c) 2010-2011 Perttu Ahola <celeron55@gmail.com>
5 (see source files for other contributors)
6
7 Further documentation:
8 ----------------------
9 - Website: http://celeron.55.lt/~celeron55/minetest/
10 - Wiki: http://celeron.55.lt/~celeron55/minetest/wiki/
11 - Forum: http://celeron.55.lt/~celeron55/minetest/forum/
12 - doc/ directory of source distribution
13
14 This game is not finished:
15 --------------------------
16 - Don't expect it to work as well as a finished game will.
17 - Please report any bugs to me. debug.txt is useful.
18
19 Controls:
20 ---------
21 - See the in-game pause menu
22 - Settable in the configuration file, see the section below.
23
24 Map directory:
25 --------------
26 - Map is stored in a directory, which can be removed to generate a new map.
27 - There is a command-line option for it: --map-dir
28 - For a RUN_IN_PLACE build, it is located in:
29                 ../world
30 - Otherwise something like this:
31         Windows: C:\Documents and Settings\user\Application Data\minetest\world
32         Linux: ~/.minetest/world
33         OS X: ~/Library/Application Support/minetest/world
34
35 Configuration file:
36 -------------------
37 - An optional configuration file can be used. See minetest.conf.example.
38 - Path to file can be passed as a parameter to the executable:
39         --config <path-to-file>
40 - Defaults:
41         - If built with -DRUN_IN_PLACE=1:
42                 ../minetest.conf
43                 ../../minetest.conf
44         - Otherwise something like this:
45                 Windows: C:\Documents and Settings\user\Application Data\minetest\minetest.conf
46                 Linux: ~/.minetest/minetest.conf
47                 OS X: ~/Library/Application Support/minetest.conf
48
49 Command-line options:
50 ---------------------
51 - Use --help
52
53 Compiling on GNU/Linux:
54 -----------------------
55
56 Install dependencies. Here's an example for Debian/Ubuntu:
57 $ apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng12-dev libjpeg8-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev
58
59 Download source, extract (this is the URL to the latest of source repository, which might not work at all times):
60 $ wget https://github.com/celeron55/minetest/tarball/master -O master.tar.gz
61 $ tar xf master.tar.gz
62 $ cd celeron55-minetest-286edd4 (or similar)
63
64 Build a version that runs directly from the source directory:
65 $ cmake . -DRUN_IN_PLACE=1
66 $ make -j2
67
68 Run it:
69 $ cd bin
70 $ ./minetest
71
72 - Use cmake . -LH to see all CMake options and their current state
73 - If you want to install it system-wide (or are making a distribution package), you will want to use -DRUN_IN_PLACE=0
74 - You can build a bare server or a bare client by specifying -DBUILD_CLIENT=0 or -DBUILD_SERVER=0
75 - You can select between Release and Debug build by -DCMAKE_BUILD_TYPE=<Debug or Release>
76   - Debug build is slower, but gives much more useful output in a debugger
77
78 Compiling on Windows:
79 ---------------------
80
81 - You need:
82         * CMake:
83                 http://www.cmake.org/cmake/resources/software.html
84         * MinGW or Visual Studio
85                 http://www.mingw.org/
86                 http://msdn.microsoft.com/en-us/vstudio/default
87         * Irrlicht SDK 1.7:
88                 http://irrlicht.sourceforge.net/downloads.html
89         * Zlib headers (zlib125.zip)
90                 http://www.winimage.com/zLibDll/index.html
91         * Zlib library (zlibwapi.lib and zlibwapi.dll from zlib125dll.zip):
92                 http://www.winimage.com/zLibDll/index.html
93         * Optional: gettext bibrary and tools:
94                 http://gnuwin32.sourceforge.net/downlinks/gettext.php
95                 - This is used for other UI languages. Feel free to leave it out.
96         * And, of course, Minetest-c55:
97                 http://celeron.55.lt/~celeron55/minetest/download
98 - Steps:
99         - Select a directory called DIR hereafter in which you will operate.
100         - Make sure you have CMake and a compiler installed.
101         - Download all the other stuff to DIR and extract them into there.
102           ("extract here", not "extract to packagename/")
103         - All those packages contain a nice base directory in them, which
104           should end up being the direct subdirectories of DIR.
105         - You will end up with a directory structure like this (+=dir, -=file):
106         -----------------
107         + DIR
108                 - zlib-1.2.5.tar.gz
109                 - zlib125dll.zip
110                 - irrlicht-1.7.1.zip
111                 - 110214175330.zip (or whatever, this is the minetest source)
112                 + zlib-1.2.5
113                         - zlib.h
114                         + win32
115                         ...
116                 + zlib125dll
117                         - readme.txt
118                         + dll32
119                         ...
120                 + irrlicht-1.7.1
121                         + lib
122                         + include
123                         ...
124                 + gettext (optional)
125                         +bin
126                         +include
127                         +lib
128                 + minetest
129                         + src
130                         + doc
131                         - CMakeLists.txt
132                         ...
133         -----------------
134         - Start up the CMake GUI
135         - Select "Browse Source..." and select DIR/minetest
136         - Now, if using MSVC:
137                 - Select "Browse Build..." and select DIR/minetest-build
138         - Else if using MinGW:
139                 - Select "Browse Build..." and select DIR/minetest
140         - Select "Configure"
141         - Select your compiler
142         - It will warn about missing stuff, ignore that at this point. (later don't)
143         - Make sure the configuration is as follows
144           (note that the versions may differ for you):
145         -----------------
146         BUILD_CLIENT             [X]
147         BUILD_SERVER             [ ]
148         CMAKE_BUILD_TYPE         Release
149         CMAKE_INSTALL_PREFIX     DIR/minetest-install
150         IRRLICHT_SOURCE_DIR      DIR/irrlicht-1.7.1
151         RUN_IN_PLACE             [X]
152         WARN_ALL                 [ ]
153         ZLIB_DLL                 DIR/zlib125dll/dll32/zlibwapi.dll
154         ZLIB_INCLUDE_DIR         DIR/zlib-1.2.5
155         ZLIB_LIBRARIES           DIR/zlib125dll/dll32/zlibwapi.lib
156         GETTEXT_BIN_DIR          DIR/gettext/bin
157         GETTEXT_INCLUDE_DIR      DIR/gettext/include
158         GETTEXT_LIBRARIES        DIR/gettext/lib/intl.lib
159         GETTEXT_MSGFMT           DIR/gettext/bin/msgfmt
160         -----------------
161         - Hit "Configure"
162         - Hit "Configure" once again 8)
163         - If something is still coloured red, you have a problem.
164         - Hit "Generate"
165         If using MSVC:
166                 - Open the generated minetest.sln
167                 - The project defaults to the "Debug" configuration. Make very sure to
168                   select "Release", unless you want to debug some stuff (it's slower
169                   and might not even work at all)
170                 - Build the ALL_BUILD project
171                 - Build the INSTALL project
172                 - You should now have a working game with the executable in
173                         DIR/minetest-install/bin/minetest.exe
174                 - Additionally you may create a zip package by building the PACKAGE
175                   project.
176         If using MinGW:
177                 - Using the command line, browse to the build directory and run 'make'
178                   (or mingw32-make or whatever it happens to be)
179                 - You should now have a working game with the executable in
180                         DIR/minetest/bin/minetest.exe
181
182 Windows releases of minetest are built using a bat script like this:
183 --------------------------------------------------------------------
184
185 set installpath="C:\tmp\minetest_install"
186 set irrlichtpath="C:\tmp\irrlicht-1.7.2"
187
188 set sourcedir=%CD%
189 set builddir=%sourcedir%\bvc10
190 mkdir %builddir%
191 pushd %builddir%
192 cmake %sourcedir% -G "Visual Studio 10" -DIRRLICHT_SOURCE_DIR=%irrlichtpath% -DRUN_IN_PLACE=1 -DCMAKE_INSTALL_PREFIX=%installpath%
193 "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" ALL_BUILD.vcxproj /p:Configuration=Release
194 "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" INSTALL.vcxproj /p:Configuration=Release
195 "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" PACKAGE.vcxproj /p:Configuration=Release
196 popd
197
198 License of Minetest-c55 textures and sounds
199 -------------------------------------------
200
201 This applies to textures and sounds contained in the main Minetest
202 distribution.
203
204 Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)                                 
205 http://creativecommons.org/licenses/by-sa/3.0/
206
207 License of Minetest-c55 source code
208 -----------------------------------
209
210 Minetest-c55
211 Copyright (C) 2010-2011 celeron55, Perttu Ahola <celeron55@gmail.com>
212
213 This program is free software; you can redistribute it and/or modify
214 it under the terms of the GNU General Public License as published by
215 the Free Software Foundation; either version 2 of the License, or
216 (at your option) any later version.
217
218 This program is distributed in the hope that it will be useful,
219 but WITHOUT ANY WARRANTY; without even the implied warranty of
220 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
221 GNU General Public License for more details.
222
223 You should have received a copy of the GNU General Public License along
224 with this program; if not, write to the Free Software Foundation, Inc.,
225 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
226
227 Irrlicht
228 ---------------
229
230 This program uses the Irrlicht Engine. http://irrlicht.sourceforge.net/
231
232  The Irrlicht Engine License
233
234 Copyright © 2002-2005 Nikolaus Gebhardt
235
236 This software is provided 'as-is', without any express or implied
237 warranty. In no event will the authors be held liable for any damages
238 arising from the use of this software.
239
240 Permission is granted to anyone to use this software for any purpose,
241 including commercial applications, and to alter it and redistribute
242 it freely, subject to the following restrictions:
243
244    1. The origin of this software must not be misrepresented; you
245       must not claim that you wrote the original software. If you use
246           this software in a product, an acknowledgment in the product
247           documentation would be appreciated but is not required.
248    2. Altered source versions must be plainly marked as such, and must
249       not be misrepresented as being the original software.
250    3. This notice may not be removed or altered from any source
251       distribution.
252
253
254 JThread
255 ---------------
256
257 This program uses the JThread library. License for JThread follows:
258
259 Copyright (c) 2000-2006  Jori Liesenborgs (jori.liesenborgs@gmail.com)
260
261 Permission is hereby granted, free of charge, to any person obtaining a
262 copy of this software and associated documentation files (the "Software"),
263 to deal in the Software without restriction, including without limitation
264 the rights to use, copy, modify, merge, publish, distribute, sublicense,
265 and/or sell copies of the Software, and to permit persons to whom the
266 Software is furnished to do so, subject to the following conditions:
267
268 The above copyright notice and this permission notice shall be included
269 in all copies or substantial portions of the Software.
270
271 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
272 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
273 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
274 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
275 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
276 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
277 IN THE SOFTWARE.
278
279