diff --git a/INSTALL-linux.txt b/COMPILE-linux.txt similarity index 69% rename from INSTALL-linux.txt rename to COMPILE-linux.txt index c064960d7..39a357bea 100644 --- a/INSTALL-linux.txt +++ b/COMPILE-linux.txt @@ -12,8 +12,6 @@ engine. For more information, see README.txt or Installation from source ======================== -(this file is NOT complete!) - Supported Unix platforms: ------------------------- @@ -22,8 +20,8 @@ The only Unix operating system that has been tested and is known to work is 32bit Ubuntu Linux 8.04. FreeBSD works partially, but you have to recompile most of the -dependencies as well. There is a bug in the compiler can breaks -exceptions though, so if anything goes wrong you probably will not get +dependencies as well. There is a bug in the compiler however, that +breaks exceptions. So if anything goes wrong you probably will not get any sensible error message. Linux 64 bit is known NOT to work at the moment. @@ -32,6 +30,7 @@ If you manage to build OpenMW on a platform not listed here, or want to try, please let me know! + Dependencies: ------------- @@ -44,44 +43,38 @@ gcc and g++ (C++ compiler) GNU make (build tool for C++ files) DMD 1.031 (D compiler) or GDC 4.1.3 (alternative D compiler) -Monster 0.8 (scripting language and tools) -DSSS 0.75 (D build tool) -curl (for DSSS) + The above versions are the ones I have tested recently, but other versions might work. OGRE, Audiere and OIS will require their own set of dependencies. I recommend using an automated package tool to install as many of these as possible. On ubuntu, try typing: -sudo apt-get install libogre-dev libaudiere-dev libois-dev build-essential g++ curl gdc +sudo apt-get install libogre-dev libaudiere-dev libois-dev build-essential g++ gdc +If you want to install Ogre, Audiere or OIS manually, try: -This takes care of OGRE, Audiere, OIS, the C and D compilers, make and -curl. The rest have to be installed manually. This will give you the -GDC (frontend for GCC) compiler. +OGRE: http://ogre3d.org +Audiere: http://audiere.sourceforge.net/ +OIS: http://sourceforge.net/projects/wgois/ -The "official" compiler, DMD, is updated more often, but both should -work. Note however that DMD is only available on 32 bit Linux - other -operating systems or architectures will have to use GDC. (However GDC -might also be unstable on these platforms.) -If you want to use DMD instead, go to -http://digitalmars.com/d/1.0/dmd-linux.html -You can find the two remaining dependencies here: +Choosing a D compiler +--------------------- -DSSS: http://svn.dsource.org/projects/dsss/downloads/ -Monster: http://monster.snaptoad.com/download.html +The above apt-get command installs the GDC compiler. There are +currently two choices for the D compiler, DMD and GDC. DMD is the +"official" compiler and is updated more often, while GDC is a +completely open source frontend to GCC (The GNU compiler.) Both should +work equally well with OpenMW. -If you are using a DSSS binary and not compiling from source (I -recommend the binary), make sure to get one that matches your D -compiler. Ie. get the GDC version if you installed GDC, and the DMD -version for DMD. +If you want to use DMD instead, it can be found at: +http://digitalmars.com/d/1.0/dmd-linux.html -If you want to install Ogre, Audiere or OIS manually as well, try: +Note that DMD is only available on 32 bit Linux - other operating +systems or architectures will have to use GDC. However GDC might be +unstable on these platforms as well, even if it runs. -OGRE: http://ogre3d.org -Audiere: http://audiere.sourceforge.net/ -OIS: http://sourceforge.net/projects/wgois/ Building: @@ -89,22 +82,16 @@ Building: After installing all the dependencies, you can try running make first to see if the C++ parts compile. You may need to alter the Makefile if -you are using non-standard include paths, etc. When you are ready to -compile the D parts and link it all together, type: +you are using non-standard include paths, etc. If you have DSSS +installed (a D build tool), type: dsss build -If something goes terribly wrong during the build (which isn't -unlikely), and you figure out how to solve it, I would appreciate if -you told me about it so I could update these instructions. - +If you do NOT have DSSS, you can compile using the script +./build_openmw.sh - -Installation from binary -======================== - -(not written yet - we might as well create a .deb file) +(Currently only works with the GDC compiler) diff --git a/BUILDING-win32.txt b/COMPILE-win32.txt similarity index 85% rename from BUILDING-win32.txt rename to COMPILE-win32.txt index c757ff259..d1e0a483c 100644 --- a/BUILDING-win32.txt +++ b/COMPILE-win32.txt @@ -31,10 +31,10 @@ gdc 4.1.3 (mingw) (D compiler) The above versions are the ones I have tested recently, but other versions might work. OGRE, Audiere and OIS are complex libraries with -their own set of dependencies. I recomend downloading prebuild SDKs +their own set of dependencies. I recommend downloading prebuild SDKs instead of building them from source. You can find these here: -OGRE: http://ogre3d.org (See "Getting Ogre" above) +OGRE: http://ogre3d.org (See "Getting Ogre" in README-win32.txt for details) Audiere: http://audiere.sourceforge.net/ OIS: Comes with Ogre Mingw http://sourceforge.net/projects/mingw/ @@ -44,15 +44,14 @@ gdc http://sourceforge.net/projects/gdcwin/ is incompatible with most C++ compilers in Windows.) -Setting everything up: ----------------------- +Setting everything up +--------------------- First, install Mingw (get the automatic installer.) Make sure gcc and g++ packages are selected. Next install the gdcwin installer (the package named 'gdc') and -install it (the default is to install it in the same dir as mingw, -this is ok.) +install it in the same directory as Mingw. Open a command line. Set up your PATH to include Mingw and gdc (eg. "set PATH=%PATH%;c:\mingw\bin"). Make sure the commands g++ and @@ -75,6 +74,7 @@ To build, simply run build_openmw.bat Running ------- -For instructions on how to set everything up, see RUNNING-win32.txt +For instructions on how to set everything up after compilation, see +README-win32.txt. Good luck! diff --git a/RUNNING-win32.txt b/README-win32.txt similarity index 76% rename from RUNNING-win32.txt rename to README-win32.txt index 9d90ade44..fe1d78f69 100644 --- a/RUNNING-win32.txt +++ b/README-win32.txt @@ -13,11 +13,12 @@ Running OpenMW ============== If you downloaded one of the binary releases, keep on reading. If you -got the source release, read the file BUILDING-win32.txt first, and +got the source release, read the file COMPILE-win32.txt first, and come back here when you are done. -There are two binary packages for Windows: one that includes the Ogre -DLLs, and one doesn't. (They are about 190mb in total.) +There are two binary packages for Windows: one that includes all the +Ogre DLLs, and one doesn't. The only reason to get the non-ogre +version is to save bandwidth when you already have the Ogre SDK. If you have the version with Ogre, you can skip the next section. @@ -46,13 +47,13 @@ OIS_d.dll Final configuration ------------------- -The final file you need (not included for copyright reasons) is +The final DLL you need (not included for copyright reasons) is d3dx9d_30.dll. If you have DirectX installed, you most likely have d3dx9_30.dll in your \windows\system32 folder. Copy it to the OpenMW directory and rename it to d3dx9d_30.dll (note the "d" after the "9".) OpenMW assumes you have the Morrowind data files in c:\Program -Files\Bethesda Softworks\Morrowind\Data Files\ If this is not the +Files\Bethesda Softworks\Morrowind\Data Files\ . If this is not the case, you should edit openmw.ini first. @@ -62,9 +63,9 @@ Running Just run openmw.exe and enjoy! ;-) The first time you run OpenMW, you will be asked to set screen -resolution and other graphics settings. To be safe, don't select -fullscreen mode on the first run. You can bring up the dialogue at any -time by using the -oc switch. +resolution and other graphics settings. To be safe, it's not +recommended to select fullscreen mode on the first run. You can bring +up the dialogue at any time by using the -oc switch. Move around with WASD or arrow keys, move up and down with left shift and ctrl, exit with 'q' or escape. diff --git a/README.txt b/README.txt index 2dd11c52b..cc958198d 100644 --- a/README.txt +++ b/README.txt @@ -6,7 +6,7 @@ Email: korslund@gmail.com WWW: http://openmw.snaptoad.com License: See GPL3.txt Current version: 0.3 (still very pre-alpha) -Date: 2008 jul. 6 +Date: 2008 jul. 10 @@ -21,12 +21,13 @@ Morrowind installed on your system! Release notes for 0.3 ===================== -This release adds support for building and running on Windows. As a -result, the installation instructions have been split into the files -INSTALL-win32.txt and INSTALL-linux.txt. These files cover both the -binary packages and installation from source. +As of this release, OpenMW officially builds and runs on Windows. The +installation instructions have been split into the files +COMPILE-win32.txt and README-win32.txt for the source and binary +windows releases respectively, and COMPILE-linux.txt for Linux / Unix +systems. -See also the changelog at the end. +See the changelog at the end for more changes. Note: if you are using a localized (non-English) version of Morrowind, the default starting cell (Sud) might not exist, and the esmtool @@ -41,6 +42,7 @@ On the immediate TODO list: =========================== - read the data files in the correct code page +- switch audio to OpenAL - support for Mac - collision detection - displaying creatures correcty, animation @@ -57,14 +59,17 @@ Installation Currently supported platforms are Windows and Linux. Tested on Windows XP and Ubuntu 8.04. -For instructions, see the files INSTALL-win32.txt or -INSTALL-linux.txt. +For instructions, see one of the following: + +README-win32.txt - instructions for binary Windows release +COMPILE-win32.txt - instructions for building source on Windows +COMPILE-linux.tx - instructions for building source on Linux / Unix FreeBSD has also been tested but is only partially supported, due to sketchy D compiler support. It will run, but exceptions do not work and will immediately abort the program. -Linux 64 bit is known NOT to work, also because of compiler +Linux 64 bit is known NOT to work, also because of current compiler deficiencies. @@ -91,12 +96,14 @@ Acknowledgements Thanks goes out to: +- Bethesda Softworks for creating Morrowind! + - The NifTools group / NIFLA for their great work on decoding the NIF file format. - Dmitry Marakasov for testing and porting to FreeBSD. -- Nebelmann for continued testing on 64 bit linux. +- Bastien Jansen for continued testing on 64 bit linux. - Bethesda Softworks for creating Morrowind! @@ -106,9 +113,10 @@ Thanks goes out to: Changelog: ========== -0.3 (work in progress) +0.3 (2008 jul. 10) - latest release - built and tested on Windows XP - partial support for FreeBSD (exceptions do not work) +- temporarily dropped DSSS and Monster as necessary dependencies - renamed main program from 'morro' to 'openmw' - made the config system more robust - added -oc switch for showing Ogre config window on startup @@ -118,7 +126,7 @@ Changelog: Dmitry Marakasov.) - tested against OIS 1.0.0 (Ubuntu repository package) -0.2 (2008 jun. 17) - latest release +0.2 (2008 jun. 17) - compiles with gdc - switched to DSSS for building D code - includes the program esmtool diff --git a/build_openmw.bat b/build_openmw.bat index 925f9c005..17b34f3b6 100755 --- a/build_openmw.bat +++ b/build_openmw.bat @@ -1,5 +1,6 @@ @echo off -rem See INSTALL.txt for instructions. + +rem See BUILDING-win32.txt for instructions. rem This file assumes it can find Ogre in ..\ogre and rem Audiere in ..\audiere diff --git a/build_openmw.sh b/build_openmw.sh new file mode 100755 index 000000000..438862c66 --- /dev/null +++ b/build_openmw.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +# See INSTALL-linux.txt for instructions + +make || exit 1 + +gdc -Wall -Wextra -O2 -g -fversion=Posix -o openmw openmw.d core/*.d ogre/*.d nif/*.d util/*.d bsa/*.d monster/util/*.d input/*.d sound/*.d scene/*.d esm/*.d cpp_*.o -laudiere -lm -lOgreMain -lOIS -lstdc++ + +gdc -Wall -Wextra -O2 -g -fversion=Posix -o esmtool esmtool.d core/*.d ogre/*.d nif/*.d util/*.d bsa/*.d monster/util/*.d input/*.d sound/*.d scene/*.d esm/*.d cpp_*.o -laudiere -lm -lOgreMain -lOIS -lstdc++