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.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
214
19846c18071b Initial autoconf support.
Ryan C. Gordon <icculus@icculus.org>
parents: 208
diff changeset
     1
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
     2
The latest PhysicsFS information and releases can be found at:
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
     3
  http://icculus.org/physfs/
214
19846c18071b Initial autoconf support.
Ryan C. Gordon <icculus@icculus.org>
parents: 208
diff changeset
     4
208
d176cef27a77 Updated win32 build info, other tweaks.
Ryan C. Gordon <icculus@icculus.org>
parents: 205
diff changeset
     5
Building is (ahem) very easy.
54
2756e7c8125f Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     6
71
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
     7
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
     8
ALL PLATFORMS:
91
4a13fbf4a88a Updated again.
Ryan C. Gordon <icculus@icculus.org>
parents: 89
diff changeset
     9
71
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
    10
Please understand your rights and mine: read the text file LICENSE in the root
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
    11
of the source tree. If you can't abide by it, delete this source tree now.
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
    12
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    13
If you've got Doxygen (http://www.doxygen.org/) installed, you can run it
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    14
 without any command line arguments in the root of the source tree to generate
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    15
 the API reference. This is optional. You can browse the API docs online
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    16
 here:  http://icculus.org/physfs/docs/
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    17
71
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
    18
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
    19
230
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    20
UNIX and BeOS:
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    21
(If you got this code from CVS, run "./bootstrap" first.)
54
2756e7c8125f Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    22
230
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    23
Run ./configure --help and see what features can be optionally enabled or
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    24
disabled. "./configure" does its best to pick optimal defaults for your
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    25
platform.
54
2756e7c8125f Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    26
230
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    27
Run "make".
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    28
As root, run "make install".
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    29
If you get sick of the library, run "make uninstall" as root and it will
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    30
remove all traces of the library from the system paths.
54
2756e7c8125f Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    31
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    32
BeOS doesn't seem to be building shared libraries with the version of
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    33
autoconf/automake I used (even though it swears it did). If anyone has some
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    34
insight into this, I'd like to hear from you.
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    35
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    36
71
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
    37
105bdb041c03 More win32 updates.
Ryan C. Gordon <icculus@icculus.org>
parents: 60
diff changeset
    38
WIN32:
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    39
If building with CygWin, mingw32 or something else that uses the GNU
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    40
toolchain, follow the Unix instructions, above.
230
13e275b51d5a Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 214
diff changeset
    41
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    42
Point Visual Studio 6.0 at "physfs.dsp" in the root of the source tree, and
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    43
build. This will produce a "physfs.dll" and "physfs.lib" (shared library and
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    44
import lib, respectively) in either a "Debug" or "Release" directory,
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    45
depending on what configuration you chose to build. After building the lib,
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    46
you can make sure it works by building the "test_physfs.dsp" project file,
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    47
which will create "test_physfs.exe" in "Debug" or "Release". This EXE is
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    48
linked against the DLL you built previously.
89
2f9f1d02aaca Updated win32 build instructions.
Ryan C. Gordon <icculus@icculus.org>
parents: 71
diff changeset
    49
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    50
Visual Studio.NET probably handles these files, but we'll have honest-to-god
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    51
.vcproj files in the next official release.
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    52
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    53
If you're using another compiler, send me a patch when you get it working.  :)
208
d176cef27a77 Updated win32 build info, other tweaks.
Ryan C. Gordon <icculus@icculus.org>
parents: 205
diff changeset
    54
d176cef27a77 Updated win32 build info, other tweaks.
Ryan C. Gordon <icculus@icculus.org>
parents: 205
diff changeset
    55
No one's tried building this for a WinCE (PocketPC) platform, but it may or
d176cef27a77 Updated win32 build info, other tweaks.
Ryan C. Gordon <icculus@icculus.org>
parents: 205
diff changeset
    56
may not work. Patches are welcome.
d176cef27a77 Updated win32 build info, other tweaks.
Ryan C. Gordon <icculus@icculus.org>
parents: 205
diff changeset
    57
91
4a13fbf4a88a Updated again.
Ryan C. Gordon <icculus@icculus.org>
parents: 89
diff changeset
    58
If someone is willing to maintain prebuilt PhysicsFS DLLs, I'd like to hear
4a13fbf4a88a Updated again.
Ryan C. Gordon <icculus@icculus.org>
parents: 89
diff changeset
    59
from you; send an email to icculus@clutteredmind.org.
4a13fbf4a88a Updated again.
Ryan C. Gordon <icculus@icculus.org>
parents: 89
diff changeset
    60
187
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    61
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    62
187
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    63
MACOS 8/9:
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    64
Double-click on "CWProjects.sit" in the root of the source tree. This will
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    65
unpack into a folder called "Mac Classic Support", which has CodeWarrior 6
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    66
project files.
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    67
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    68
Point CodeWarrior at "physfs.mcp" in that new folder, and build. This will
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    69
produce a "PhysicsFS" or "PhysicsFS Debug" shared library, depending on what
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    70
configuration you chose to build. After building the lib, you can make sure
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    71
it works by building the "test_physfs.mcp" project file, which will create
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    72
"test_physfs" or "test_physfs Debug". These binaries are linked against the
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    73
DLLs you built previously.
187
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    74
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    75
If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    76
the Mac, I'd like to hear from you; send an email to icculus@clutteredmind.org.
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    77
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    78
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    79
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    80
MACOS X:
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    81
You (currently) need to use the freeware Apple Developer Tools, which are
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    82
based on the GNU toolchain. Fire up a terminal and run "cc"...if this reports
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    83
"no input files" then you've got the tools installed.
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    84
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    85
From a terminal, run "./configure --disable-shared --enable-static". Run
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    86
"make". This will get you a static library and a "test_physfs" binary.
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    87
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    88
I would love for someone to fix this so it will build shared libraries (since
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    89
static libraries make it awkward to deal with the license terms), or send me
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    90
Project Builder libraries.
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    91
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    92
If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    93
MacOS X, I'd like to hear from you; send an email to icculus@clutteredmind.org.
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    94
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    95
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    96
187
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
    97
OTHER PLATFORMS:
283
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    98
Many Unix-like platforms might "just work" with the GNU autoconf tools. Some
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
    99
of these platforms are known to have worked at one time, but have not been
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
   100
heavily tested, if tested at all. To implement a new platform or archiver,
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
   101
please read the heavily-commented physfs_internal.h and look in the platform/
c966316c8998 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 230
diff changeset
   102
and archiver/ directories for examples.
187
1241722f5f28 Added MacOS info, etc.
Ryan C. Gordon <icculus@icculus.org>
parents: 91
diff changeset
   103
54
2756e7c8125f Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   104
--ryan. (icculus@clutteredmind.org)
2756e7c8125f Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   105