Angband/65\Compiling

From RogueBasin
Revision as of 03:43, 25 April 2009 by Nate879 (talk | contribs) (It looks like you duplicated 3 sections)
Jump to navigation Jump to search

With Visual C++ (IDE)

The instructions below should give you an optimized, release, version of the game. If you want to compile a debug version make the obvious changes.

  • Copy 'angband.ico' into the \src\win directory.
  • Start the VC++ IDE and create a new empty project in the source directory (a new subfolder will be created)
  • Add all the *.c, *.h and *.rc files from the \src directory and the monster, object, player and win subdirectories.

Build -> Configuration manager

  • Set 'configuration' to "Release".

Project -> Properties

  • Configuration Properties / General : Set "output directory" to where you want the .exe (usually ..\..\ ).
  • C/C++ / General : Set additional include directories to the source directory (usually ..\ )
  • C/C++ / General : Set warning level to /W4 (optional).
  • C/C++ / Advanced : Change "Compile as" to "Compile as C code /TC"
  • C/C++ / Command Line : Type "/DWINDOWS /DNDEBUG" into the Command line.
  • Linker / Input : Set "additional dependencies" to winmm.lib

With Visual C++ (Command prompt)

  • Start Visual C++ Command Prompt
  • Change to source directory
  • Enter "nmake /fMakefile.nmake"

With Dev-C++

NOTE: Earlier builds compiled with Dev-C++ were associated with segment fault crashes. Now seems to be OK.

  • Create an empty C project, located in the source directory
  • Add every C file from src/, src/win, src/monster, src/object and src/player.
  • From Project -> Project Options, General tab set "Win32 console application"
  • From Project -> Project Options, Build Options tab, set the executable output directory to "..\".
  • From Project -> Project Options, parameters tab, add -mwindows -DWINDOWS -I. to the compiler options and -lmingw32 -lwinmm -mwindows to the linker options.

With Linux

Compiling with Linux should be possible (now that some initial problems have been fixed). Compiling guides, hints, etc. are welcome.