Getting Angband from Github and compiling it

Collapse
This is a sticky topic.
X
X
 
  • Time
  • Show
Clear All
new posts

  • Mikko Lehtinen
    replied
    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?

    Leave a comment:


  • TJS
    replied
    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.

    Leave a comment:


  • fizzix
    replied
    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.

    Leave a comment:


  • Magnate
    replied
    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.

    Leave a comment:


  • Mikko Lehtinen
    replied
    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.

    Leave a comment:


  • TJS
    replied
    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, 12:15.

    Leave a comment:


  • Magnate
    replied
    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

    Leave a comment:


  • TJS
    replied
    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?

    Leave a comment:


  • david3x3x3
    replied
    Originally posted by nppangband
    If this helps, I believe Angband compiles with little to no issues with MINGW (rather than cygwin). I believe most of the Angband devteam works with MINGW.
    I build with Cygwin. Are you following the instructions in compiling.txt? I submitted an update to those instructions and some changes to the buildsys that weren't working with Cygwin. As far as I know everything works fine with the current version.

    Leave a comment:


  • nppangband
    replied
    Originally posted by Nick

    Or you could just use Makefile.win like takkaria suggested
    If this helps, I believe Angband compiles with little to no issues with MINGW (rather than cygwin). I believe most of the Angband devteam works with MINGW.

    With MINGW the command line for makefile.win is "make -f makefile.win MINGW=YES".

    Leave a comment:


  • Nick
    replied
    Originally posted by TricksterWolf
    Success!

    I just had to run configure and wait for it to finish... I had accidentally stopped it previously.

    Unfortunately, main.c would not compile due to modules[] having zero or negative size. That was the only error I hit on a clean and build, however, so now I'll screw around with it to see if I can get it to make something that actually works.
    Good effort.

    Your problem will be that you need to have one of the front ends - x11, gcu or sdl - enabled. That will require x11, curses or SDL libraries for windows - as a first attempt you could just add --enable-x11 to configure, and see what happens.

    Or you could just use Makefile.win like takkaria suggested

    Leave a comment:


  • TricksterWolf
    replied
    Success!

    I just had to run configure and wait for it to finish... I had accidentally stopped it previously.

    Unfortunately, main.c would not compile due to modules[] having zero or negative size. That was the only error I hit on a clean and build, however, so now I'll screw around with it to see if I can get it to make something that actually works.

    Leave a comment:


  • TricksterWolf
    replied
    Okay, after searching online I have discovered that aclocal is in the automake package. So I installed every version of everything automake, and the autogen shell script works now. It doesn't create the .mk files from the .mk.in files, however.

    I tried making in the cygwin terminal and no difference. I'm still missing something that will turn the .mk.in files into .mk files. I was told this was configure, but I don't exactly see how configure comes into play. I can run it, and I can see the options, but what do I need to set to turn the .mk.in files into .mk files in root/mk for my angband project? Again, autogen.sh runs now, but doesn't create the .mk files.

    Leave a comment:


  • TricksterWolf
    replied
    Originally posted by myshkin
    Yes, you need the autoconf package.
    Ok.

    I installed everything that came up on a search for autoconf except for the development version (I'm using the stable version).

    I still get the same error:

    Code:
    *info* running aclocal
    *error* aclocal failed. (exit code = 127)
    ./autogen.sh: line 38: aclocal: command not found
    I get this error regardless as to whether I run it in NetBeans or at the Cygwin command line. It doesn't know anything about an "aclocal".

    Leave a comment:


  • Magnate
    replied
    @TricksterWolf - if you do get a successful build from autoconf+cygwin, please document and post it, as it's currently missing from our build guides!

    Leave a comment:

Working...
😀
😂
🥰
😘
🤢
😎
😞
😡
👍
👎