INSTALL
author Ryan C. Gordon <icculus@icculus.org>
Tue, 11 Jun 2002 08:49:53 +0000
changeset 283 c966316c8998
parent 230 13e275b51d5a
child 488 731e85d74cfe
permissions -rw-r--r--
Updated.


The latest PhysicsFS information and releases can be found at:
  http://icculus.org/physfs/

Building is (ahem) very easy.


ALL PLATFORMS:

Please understand your rights and mine: read the text file LICENSE in the root
of the source tree. If you can't abide by it, delete this source tree now.

If you've got Doxygen (http://www.doxygen.org/) installed, you can run it
 without any command line arguments in the root of the source tree to generate
 the API reference. This is optional. You can browse the API docs online
 here:  http://icculus.org/physfs/docs/



UNIX and BeOS:
(If you got this code from CVS, run "./bootstrap" first.)

Run ./configure --help and see what features can be optionally enabled or
disabled. "./configure" does its best to pick optimal defaults for your
platform.

Run "make".
As root, run "make install".
If you get sick of the library, run "make uninstall" as root and it will
remove all traces of the library from the system paths.

BeOS doesn't seem to be building shared libraries with the version of
autoconf/automake I used (even though it swears it did). If anyone has some
insight into this, I'd like to hear from you.



WIN32:
If building with CygWin, mingw32 or something else that uses the GNU
toolchain, follow the Unix instructions, above.

Point Visual Studio 6.0 at "physfs.dsp" in the root of the source tree, and
build. This will produce a "physfs.dll" and "physfs.lib" (shared library and
import lib, respectively) in either a "Debug" or "Release" directory,
depending on what configuration you chose to build. After building the lib,
you can make sure it works by building the "test_physfs.dsp" project file,
which will create "test_physfs.exe" in "Debug" or "Release". This EXE is
linked against the DLL you built previously.

Visual Studio.NET probably handles these files, but we'll have honest-to-god
.vcproj files in the next official release.

If you're using another compiler, send me a patch when you get it working.  :)

No one's tried building this for a WinCE (PocketPC) platform, but it may or
may not work. Patches are welcome.

If someone is willing to maintain prebuilt PhysicsFS DLLs, I'd like to hear
from you; send an email to icculus@clutteredmind.org.



MACOS 8/9:
Double-click on "CWProjects.sit" in the root of the source tree. This will
unpack into a folder called "Mac Classic Support", which has CodeWarrior 6
project files.

Point CodeWarrior at "physfs.mcp" in that new folder, and build. This will
produce a "PhysicsFS" or "PhysicsFS Debug" shared library, depending on what
configuration you chose to build. After building the lib, you can make sure
it works by building the "test_physfs.mcp" project file, which will create
"test_physfs" or "test_physfs Debug". These binaries are linked against the
DLLs you built previously.

If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for
the Mac, I'd like to hear from you; send an email to icculus@clutteredmind.org.



MACOS X:
You (currently) need to use the freeware Apple Developer Tools, which are
based on the GNU toolchain. Fire up a terminal and run "cc"...if this reports
"no input files" then you've got the tools installed.

From a terminal, run "./configure --disable-shared --enable-static". Run
"make". This will get you a static library and a "test_physfs" binary.

I would love for someone to fix this so it will build shared libraries (since
static libraries make it awkward to deal with the license terms), or send me
Project Builder libraries.

If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for
MacOS X, I'd like to hear from you; send an email to icculus@clutteredmind.org.



OTHER PLATFORMS:
Many Unix-like platforms might "just work" with the GNU autoconf tools. Some
of these platforms are known to have worked at one time, but have not been
heavily tested, if tested at all. To implement a new platform or archiver,
please read the heavily-commented physfs_internal.h and look in the platform/
and archiver/ directories for examples.

--ryan. (icculus@clutteredmind.org)