Compiling Minetest on Windows

vita
Member
Posts: 62
Joined: Thu Apr 05, 2012 19:08

by vita » Post

no but desperate that minecraft is not working :/

User avatar
RabbiBob
Member
Posts: 335
Joined: Sat Jan 28, 2012 22:40
Location: /teleport 54,47,28
Contact:

by RabbiBob » Post

Can you edit the first post and move the first "code" tag down a bit, right before the "Steps" line? That would re-activate all of the URL links.

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-f ... ?libvorbis
INCLUDE=http://xiph.org/downloads/
HERE *Libvorbisfile
DLL=http://www.dll-files.com/dllindex/dll-f ... vorbisfile
INCLUDE=libvorbis/include
HERE *Libogg
INCLUDE=http://xiph.org/downloads/
DLL= http://www.dlldump.com/download-dll-fil ... nload.html
* And, of course, Minetest-c55:
http://c55.me/minetest/download


>> Libvorbis 1.3.3 source download: http://downloads.xiph.org/releases/vorbis/
>> LibOgg source download: http://downloads.xiph.org/releases/ogg/
Last edited by RabbiBob on Fri Apr 06, 2012 22:19, edited 1 time in total.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

bgsmithjr wrote:EDIT'
You will also need openal
http://connect.creativelabs.com/openal/ ... Items.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-f ... ?libvorbis
INCLUDE=http://xiph.org/downloads/
HERE *Libvorbisfile
DLL=http://www.dll-files.com/dllindex/dll-f ... vorbisfile
INCLUDE=libvorbis/include
HERE *Libogg
INCLUDE=http://xiph.org/downloads/
DLL= http://www.dlldump.com/download-dll-fil ... nload.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.
bgsmithjr: They wanted them removed to activate the links.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

Hi all,

bgsmithjr, can you help me for the newest version ?

I've this problem :

Code: Select all

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)'
Thank.
Last edited by Utilisatrice on Sat Apr 07, 2012 12:58, edited 1 time in total.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

Did change the code generation to /MD?
And ignore the specific library libcmt.lib?
Last edited by bgsmithjr on Sat Apr 07, 2012 15:15, edited 1 time in total.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

Yes, I do like you said but its not working.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

Do you have al.h, zlib.h, zconf.h, vorbis.h,ogg.h,irrlicht.h, all in Visual STudio/VC/include?

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

My instructions only apply to people using the files, I listed, any substitution make it void.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

Yes now,

I can't compile i have the same error.
Last edited by Utilisatrice on Sat Apr 07, 2012 17:25, edited 1 time in total.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

I just compiled following those instructions

Code: Select all

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 ==========

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

I think you are lying trying to make me look bad, buddy.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

You compile the latest version ?

EDIT : No, you help me the first time, and has run, I thank again.
Last edited by Utilisatrice on Sat Apr 07, 2012 17:29, edited 1 time in total.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

zlibdllwapi.dll and .lib must be in folder zlib125dll

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

Pulled it five minutes ago.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

I take the newest version and i said if it works.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

It does work. I just used it and compiled. It must be user-error and you will not provide me with enough information, I am telling you for the second time. If you do not provide enough information I will no longer respond to your posts.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

It's simple when I take the source to compile, I get this error message on content_cao.cpp :

Code: Select all

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)'
EDIT : The latest version work but, I've just this :
2>LINK : warning LNK4075: ' /INCREMENTAL' ignoré à cause de la spécification '/LTCG'
2> Création de la bibliothèque C:/Users/****/Desktop/Minetest/celeron55-minetest-2eec788/bin/Release/minetest.lib et de l'objet C:/Users/****/Desktop/Minetest/celeron55-minetest-2eec788/bin/Release/minetest.exp
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcCloseDevice
2>sound_openal.obj : error LNK2001: symbole externe non résolu _ov_read
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alGenSources
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcCreateContext
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcOpenDevice
2>sound_openal.obj : error LNK2001: symbole externe non résolu _ov_fopen
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alGetString
2>sound_openal.obj : error LNK2001: symbole externe non résolu _ov_info
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alSourcef
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alListenerf
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alSourcePlay
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alSourcei
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alGenBuffers
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alListenerfv
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alSource3f
2>sound_openal.obj : error LNK2001: symbole externe non résolu _ov_clear
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcDestroyContext
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alDeleteSources
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcIsExtensionPresent
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcGetString
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alDistanceModel
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcGetError
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alListener3f
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alBufferData
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alcMakeContextCurrent
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alGetSourcei
2>sound_openal.obj : error LNK2001: symbole externe non résolu __imp__alGetError
2>C:\Users\****\Desktop\Minetest\celeron55-minetest-2eec788\bin\Release\minetest.exe : fatal error LNK1120: 27 externes non résolus
Sorry if this french.

Can you help me please ?
Last edited by Utilisatrice on Sat Apr 07, 2012 17:51, edited 1 time in total.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

delete minetest.sln, regenerate using c-make, open the project in visual studio, then tell me when you have visual studio open. nevermind dont' do that, it looks like you are not using openal,
symbole externe non résolu __imp__alBufferData
resolu means resolution alBufferData, would be for OpenAL framebuffer.
[url]magic.minetest.net/openAL.zip[/url]
These are the openal files you should use.
Last edited by bgsmithjr on Sat Apr 07, 2012 18:03, edited 1 time in total.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

I have open Visual Studio.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

symbole externe non résolu __imp__alBufferData
resolu means resolution alBufferData, would be for OpenAL framebuffer.
[url]magic.minetest.net/openAL.zip[/url]
These are the openal files you should use.
I am sorry you can close, you have to delete cache on cmake and change your openAL files.

Utilisatrice
Member
Posts: 103
Joined: Thu Feb 16, 2012 18:04

by Utilisatrice » Post

Sorry, I have put the lib Win64...

Its worked since the beginning.

Thank Bgsmithjr.

User avatar
bgsmithjr
Member
Posts: 436
Joined: Thu Mar 08, 2012 23:21
Location: USA,Michigan

by bgsmithjr » Post

Your welcome.

User avatar
Neuromancer
Member
Posts: 964
Joined: Tue Jun 12, 2012 22:28
GitHub: Neuromancer56

by Neuromancer » Post

I followed the instructions given in the first post. I had to install the openAl SDK and use that folder, but other than that it was pretty straightforward. When I build, I got the following error:

4>..\..\minetest\src\camera.cpp(252) : error C2065: 'M_PI' : undeclared identifier error

To fix it I put
#define _USE_MATH_DEFINES
#include "math.h"
at the top of each of the following 4 files
camera.cpp
\minetest\src\content_cao.cpp(942)
\minetest\src\clientmap.cpp(49)
\minetest\src\server.cpp(679)

and commented out cmath line in camera.

I believe this is due to a bug in VS2008.
Last edited by Neuromancer on Mon Jun 25, 2012 20:40, edited 1 time in total.

User avatar
Neuromancer
Member
Posts: 964
Joined: Tue Jun 12, 2012 22:28
GitHub: Neuromancer56

by Neuromancer » Post

bgsmithjr wrote:here are replacements for libogg, libvorbis, and libvorbisfile dlls
http://www.filedropper.com/minetest
I'm getting the dreaded "GitHub\libvorbisfile.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x2B8" also.

These files that were used to resolve the issue are no longer available. Can anyone tell me how to get past this?

Thanks

cornernote
Member
Posts: 844
Joined: Wed Jul 11, 2012 15:02

by cornernote » Post

Darkrose has done some important changes that fix a limit in the number of items you can have
https://github.com/celeron55/minetest/issues/144

Is there any chance you can compile this:
https://github.com/darkrose/minetest

That would be awesome!

Post Reply

Who is online

Users browsing this forum: No registered users and 29 guests