Jeija wrote:I would also like to compile minetest on windows (although I don't normally use it). I use the MinGW compiler. When trying to run minetest it complains that Irrlicht.dll hast not been found. When copying just a random Irrlicht.dll from another build it says something cryptic:
"Der Prozedureinsprungpunk "_ZN3irr4core14Ide3ntityMatrixE" wurde in der DLL"Irrlicht.dll" nicht gefunden" I guess this basically means that i have to compile irrlicht.dll myself. I use irrlicht version 1.7.1
Anyone having the same troubles? Does it work with visual studio?
bgsmithjr wrote:EDIT'
You will also need openal
http://connect.creativelabs.com/openal/Downloads/Forms/AllItems.aspx
Compiling on Windows:
---------------------
- You need:
* CMake:
http://www.cmake.org/cmake/resources/software.html
* MinGW or Visual Studio
http://www.mingw.org/
http://msdn.microsoft.com/en-us/vstudio/default
* Irrlicht SDK 1.7:
http://irrlicht.sourceforge.net/downloads.html
* Zlib headers (zlib125.zip)
http://www.winimage.com/zLibDll/index.html
* Zlib library (zlibwapi.lib and zlibwapi.dll from zlib125dll.zip):
http://www.winimage.com/zLibDll/index.html
* Optional: gettext bibrary and tools:
http://gnuwin32.sourceforge.net/downlinks/gettext.php
- This is used for other UI languages. Feel free to leave it out.
HERE * Libvorbis 1.3.3
DLL=http://www.dll-files.com/dllindex/dll-files.shtml?libvorbis
INCLUDE=http://xiph.org/downloads/
HERE *Libvorbisfile
DLL=http://www.dll-files.com/dllindex/dll-files.shtml?libvorbisfile
INCLUDE=libvorbis/include
HERE *Libogg
INCLUDE=http://xiph.org/downloads/
DLL= http://www.dlldump.com/download-dll-files_new.php/dllfiles/L/libogg.dll/-/download.html
* And, of course, Minetest-c55:
http://c55.me/minetest/download
- Steps:
- Select a directory called DIR hereafter in which you will operate.
- Make sure you have CMake and a compiler installed.
- Download all the other stuff to DIR and extract them into there.
("extract here", not "extract to packagename/")
NOTE: zlib125dll.zip needs to be extracted into zlib125dll
- All those packages contain a nice base directory in them, which
should end up being the direct subdirectories of DIR.
- You will end up with a directory structure like this (+=dir, -=file):
-----------------
+ DIR
- oalinst.exe
- zlib-1.2.5.tar.gz
- zlib125dll.zip
- irrlicht-1.7.1.zip
- libvorbis-1.3.3.zip
- libogg-1.3.0.zip
- 110214175330.zip (or whatever, this is the minetest source)
+ zlib-1.2.5
- zlib.h
+ win32
...
+ zlib125dll
- readme.txt
+ dll32
...
+ irrlicht-1.7.1
+ lib
+ include
...
HERE + libvorbis-1.3.3.zip
+ lib
+ include
...
HERE + libogg-1.3.0.zip
+ lib
+ include
...
+ gettext (optional)
+bin
+include
+lib
+ minetest
+ src
+ doc
- CMakeLists.txt
...
-----------------
- Start up the CMake GUI
- Select "Browse Source..." and select DIR/minetest
- Now, if using MSVC:
- Select "Browse Build..." and select DIR/minetest-build
- Else if using MinGW:
- Select "Browse Build..." and select DIR/minetest
- Select "Configure"
- Select your compiler
- It will warn about missing stuff, ignore that at this point. (later don't)
- Make sure the configuration is as follows
(note that the versions may differ for you):
-------------------------------------------------------------
BUILD_CLIENT [X]
BUILD_SERVER [ ]
CMAKE_BUILD_TYPE Release
CMAKE_INSTALL_PREFIX DIR/minetest-install
IRRLICHT_SOURCE_DIR DIR/irrlicht-1.7.1
RUN_IN_PLACE [X]
WARN_ALL [ ]
ZLIB_DLL DIR/zlib125dll/dll32/zlibwapi.dll
ZLIB_INCLUDE_DIR DIR/zlib-1.2.5
ZLIB_LIBRARIES DIR/zlib125dll/dll32/zlibwapi.lib
HERE LIBVORBIS_INCLUDE_DIR DIR/libvorbis-1.3.3/include
HERE LIBVORBIS_LIBRARIES DIR/libvorbis.dll
HERE LIBVORBISFILE_INCLUDE_DIR DIR/libvorbis-1.3.3/include
HERE LIBVORBISFILE_LIBRARIES DIR/libvorbisfile.dll
HERE LIBOGG_INCLUDE_DIR DIR/libogg-1.3.0/include
HERE LIBOGG_LIBRARIES DIR/libogg.dll
GETTEXT_BIN_DIR DIR/gettext/bin
GETTEXT_INCLUDE_DIR DIR/gettext/include
GETTEXT_LIBRARIES DIR/gettext/lib/intl.lib
GETTEXT_MSGFMT DIR/gettext/bin/msgfmt
OPENAL_INCLUDE_DIR=C:\Program Files (x86)\OpenAL\include
OPENAL_LIBRARIES=C:\Program Files (x86)\OpenAL\lib\OpenAL32.lib
- Hit "Configure"
- Hit "Configure" once again 8)
- If something is still coloured red, you have a problem.
- Hit "Generate"
If using MSVC:
- Open the generated minetest.sln
- The project defaults to the "Debug" configuration. Make very sure to
select "Release", unless you want to debug some stuff (it's slower
and might not even work at all)
- Build the ALL_BUILD project
- Build the INSTALL project
- You should now have a working game with the executable in
DIR/minetest-install/bin/minetest.exe
- Additionally you may create a zip package by building the PACKAGE
project.
If using MinGW:
- Using the command line, browse to the build directory and run 'make'
(or mingw32-make or whatever it happens to be)
- You may need to copy some of the downloaded DLLs into bin/, see what
running the produced executable tells you it doesn't have.
- You should now have a working game with the executable in
DIR/minetest/bin/minetest.exe
Windows releases of minetest are built using a bat script like this:
--------------------------------------------------------------------
set sourcedir=%CD%
set installpath="C:\tmp\minetest_install"
set irrlichtpath="C:\tmp\irrlicht-1.7.2"
set builddir=%sourcedir%\bvc10
mkdir %builddir%
pushd %builddir%
cmake %sourcedir% -G "Visual Studio 10" -DIRRLICHT_SOURCE_DIR=%irrlichtpath% -DRUN_IN_PLACE=1 -DCMAKE_INSTALL_PREFIX=%installpath%
if %errorlevel% neq 0 goto fail
"C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" ALL_BUILD.vcxproj /p:Configuration=Release
if %errorlevel% neq 0 goto fail
"C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" INSTALL.vcxproj /p:Configuration=Release
if %errorlevel% neq 0 goto fail
"C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" PACKAGE.vcxproj /p:Configuration=Release
if %errorlevel% neq 0 goto fail
popd
echo Finished.
exit /b 0
:fail
popd
echo Failed.
exit /b 1
Admin edit: code tags work better for these kinds of things.
content_cao.cpp(1089): error C2668: 'fabs' : ambiguous call to overloaded function
C:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(565): could be 'long double fabs(long double)'
C:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(517): or 'float fabs(float)'
C:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(118): or 'double fabs(double)'
while trying to match the argument list '(bool)'
content_cao.cpp(937): error C2668: 'fabs' : ambiguous call to overloaded function
C:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(565): could be 'long double fabs(long double)'
C:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(517): or 'float fabs(float)'
C:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(118): or 'double fabs(double)'
while trying to match the argument list '(bool)'
6> Creating library C:/Users/Bobby/Desktop/celeron55-minetest-e879c92/bin/Debug/minetest.lib and object C:/Users/Bobby/Desktop/celeron55-minetest-e879c92/bin/Debug/minetest.exp
6> minetest.vcxproj -> C:\Users\Bobby\Desktop\celeron55-minetest-e879c92\bin\Debug\minetest.exe
7>------ Build started: Project: ALL_BUILD, Configuration: Debug Win32 ------
7> Build all projects
========== Build: 7 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
Users browsing this forum: No registered users and 9 guests