Angband Forums Getting Angband from Github and compiling it
 Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

 November 13, 2012, 10:12 #71 TJS Swordsman   Join Date: May 2008 Posts: 473 I'm trying to build the latest version of Vanilla on Windows XP and don't seem to be getting anywhere. I'm not really used to building projects using the command line. Do I navigate into the Angband parent directory using Command Prompt and type? "make -f makefile.win MINGW=YES" I get the 'make not recognised' error. Same if I try with the Visual Studio command prompt. If I try the following with Visual studio command prompt in the src directory "nmake -f makefile.win MINGW=YES" I get the error "syntax error missing ) in macro invocation (line 19)". Any ideas?
November 13, 2012, 11:45   #72
Magnate
Angband Devteam member

Join Date: May 2007
Location: London, UK
Posts: 5,057
Quote:
 Originally Posted by TJS I'm trying to build the latest version of Vanilla on Windows XP and don't seem to be getting anywhere. I'm not really used to building projects using the command line. Do I navigate into the Angband parent directory using Command Prompt and type? "make -f makefile.win MINGW=YES" I get the 'make not recognised' error. Same if I try with the Visual Studio command prompt. If I try the following with Visual studio command prompt in the src directory "nmake -f makefile.win MINGW=YES" I get the error "syntax error missing ) in macro invocation (line 19)". Any ideas?
I think you're mixing two different things here. If you're using VS, you shouldn't need to use a command prompt at all. I know nothing about VS, but I think Blubaron left quite comprehensive VS compilation instructions somewhere in src/win/. Not sure how version-dependent they are, but you could have a go and see.

Using the command prompt is for compiling using MinGW/Msys. I think these instructions are in compiling.txt, and you no longer need to invoke Makefile.win. I think (but not certain and at work so can't check) that you need to run configure --your-preferred-options (run configure --help to see what they are), and then just type make. Hint: if configure options frighten you, just use configure --with-no-install. That will build angband in src/, and you just start it with src/angband.exe
__________________
"3.4 is much better than 3.1, 3.2 or 3.3. It still is easier than 3.0.9, but it is more convenient to play without being ridiculously easy, so it is my new favorite of the versions." - Timo Pietila

November 13, 2012, 12:02   #73
TJS
Swordsman

Join Date: May 2008
Posts: 473
Quote:
 Originally Posted by Magnate I think you're mixing two different things here. If you're using VS, you shouldn't need to use a command prompt at all. I know nothing about VS, but I think Blubaron left quite comprehensive VS compilation instructions somewhere in src/win/. Not sure how version-dependent they are, but you could have a go and see. Using the command prompt is for compiling using MinGW/Msys. I think these instructions are in compiling.txt, and you no longer need to invoke Makefile.win. I think (but not certain and at work so can't check) that you need to run configure --your-preferred-options (run configure --help to see what they are), and then just type make. Hint: if configure options frighten you, just use configure --with-no-install. That will build angband in src/, and you just start it with src/angband.exe
I'm don't want to use VS, just previously you could build using the VS command prompt with the nmake command so I thought I'd try it again after the standard command prompt didn't work.

I've downloaded and installed MinGW, but the standard command prompt doesn't recognise the command 'make' when I try to build.

How do you run configure?

MinGW seems a bit of a mystery to me as I've seen the MinGW shell mentioned, but I see no way of opening it and there's no exe in the MinGW folder.

Edit: Have tried building through visual studio via those instructions and get this error from a dll:

libpng12.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x290

Last edited by TJS; November 13, 2012 at 13:15.

November 13, 2012, 13:53   #74
Mikko Lehtinen
Veteran

Join Date: Sep 2010
Posts: 1,246
Quote:
 Originally Posted by TJS I've downloaded and installed MinGW, but the standard command prompt doesn't recognise the command 'make' when I try to build.
IIRC, the make command is actually mingw32-make (if you're on 32-bit Windows).

MinGW's bin folder needs to be in your path. Then the command prompt will recognize the mingw32-make command.

I haven't built the modern Angband on Windows, but I hope these two bits help rather than confuse.

November 13, 2012, 14:11   #75
Magnate
Angband Devteam member

Join Date: May 2007
Location: London, UK
Posts: 5,057
Quote:
 Originally Posted by TJS I'm don't want to use VS, just previously you could build using the VS command prompt with the nmake command so I thought I'd try it again after the standard command prompt didn't work. I've downloaded and installed MinGW, but the standard command prompt doesn't recognise the command 'make' when I try to build. How do you run configure? MinGW seems a bit of a mystery to me as I've seen the MinGW shell mentioned, but I see no way of opening it and there's no exe in the MinGW folder. Edit: Have tried building through visual studio via those instructions and get this error from a dll: libpng12.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x290
Ok, let's leave VS aside and focus on mingw/msys.

I think the problem you are having is that you have installed mingw but not msys, so you're typing the 'make' command into a Windows prompt rather than a mingw shell. Once we cross that hurdle things should get a lot easier.

Sadly I don't use Windows myself, but I'm hoping fizzix will see this thread and wade in, because I think he uses this build method.
__________________
"3.4 is much better than 3.1, 3.2 or 3.3. It still is easier than 3.0.9, but it is more convenient to play without being ridiculously easy, so it is my new favorite of the versions." - Timo Pietila

 November 13, 2012, 14:25 #76 fizzix Prophet   Join Date: Aug 2009 Location: Madison, Wisconsin, US Posts: 3,001 Mikko is correct. To compile with Mingw you need to add the bin to path manually. For some reason, mingw doesn't do that. Here are some instructions for xp. After that, the command to build is "mingw32-make -f Makefile.win MINGW=YES" you have to tell it to build from the Makefile.win file and not the generic makefile. I've never built with VS, but I think you need to configure first and then build. I've still had problems with the .dlls not being copied correctly into the src directory for some reason (and the .exe). So you may need to manually copy the .dll files and the .exe file from the src/ directory. I'll load up IRC at work today if you have any more questions.
 November 13, 2012, 15:17 #77 TJS Swordsman   Join Date: May 2008 Posts: 473 Hey thanks for the help, but I'm still having problems. I've already set the path for the MinGW, but I don't understand what I'm supposed to type the command "mingw32-make -f Makefile.win MINGW=YES" into. Is it the normal command prompt? If so it still doesn't recognise the mingw32-make command. I've now installed MSYS, but I don't really know what it is or what it does.
November 13, 2012, 16:20   #78
Mikko Lehtinen
Veteran

Join Date: Sep 2010
Posts: 1,246
Quote:
 Originally Posted by TJS I've already set the path for the MinGW, but I don't understand what I'm supposed to type the command "mingw32-make -f Makefile.win MINGW=YES" into. Is it the normal command prompt? If so it still doesn't recognise the mingw32-make command.
Yes, the normal Windows command prompt. (And in the angband/src directory.) You need to open a new command prompt window after setting the PATH.

Check your mingw/bin folder: does it have the file mingw32-make.exe?

November 13, 2012, 16:27   #79
TJS
Swordsman

Join Date: May 2008
Posts: 473
Quote:
 Originally Posted by Mikko Lehtinen Yes, the normal Windows command prompt. (And in the angband/src directory.) You need to open a new command prompt window after setting the PATH. Check your mingw/bin folder: does it have the file mingw32-make.exe?
Yes it has the mingw32-make.exe file (along with a load of other ones).

When I installed MSYS it said I needed to rename the make.exe as the mingw32-make.exe, but when I looked in the bin folder there was no make.exe and the mingw32-make.exe was already there.

Is it possible to point directly to the mingw32-make.exe somehow in the command line?

November 13, 2012, 16:31   #80
Mikko Lehtinen
Veteran

Join Date: Sep 2010
Posts: 1,246
Quote:
 Originally Posted by TJS Is it possible to point directly to the mingw32-make.exe somehow in the command line?
Yes.

Code:
C:\path\to\mingw\bin\mingw32-make -f Makefile.win MINGW=YES

 Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 Thread Tools Display Modes Linear Mode

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is Off Forum Rules
 Forum Jump User Control Panel Private Messages Subscriptions Who's Online Search Forums Forums Home Angband     AAR     Vanilla     Development     ToME     Sil     Variants     Competition The real world     Idle chatter     Oook! Obsolete     v4

 Similar Threads Thread Thread Starter Forum Replies Last Post Zababa Development 8 May 27, 2011 18:36 Iemortal Vanilla 8 April 16, 2011 17:41 Altefcat Variants 8 December 11, 2008 10:44 hugh Vanilla 6 March 17, 2008 16:49 RastaRuedi Vanilla 2 August 1, 2007 18:28

All times are GMT +1. The time now is 08:26.