author | Ryan C. Gordon <icculus@icculus.org> |
Fri, 19 Dec 2003 01:49:12 +0000 | |
changeset 612 | 03b07cbd1bc7 |
parent 590 | 171fd8b3f7f2 |
child 680 | 413803699662 |
child 766 | 3970811e14f4 |
permissions | -rw-r--r-- |
214
19846c18071b
Initial autoconf support.
Ryan C. Gordon <icculus@icculus.org>
parents:
208
diff
changeset
|
1 |
|
283 | 2 |
The latest PhysicsFS information and releases can be found at: |
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 | 6 |
|
71 | 7 |
|
8 |
ALL PLATFORMS: |
|
91 | 9 |
|
71 | 10 |
Please understand your rights and mine: read the text file LICENSE in the root |
11 |
of the source tree. If you can't abide by it, delete this source tree now. |
|
12 |
||
283 | 13 |
If you've got Doxygen (http://www.doxygen.org/) installed, you can run it |
14 |
without any command line arguments in the root of the source tree to generate |
|
15 |
the API reference. This is optional. You can browse the API docs online |
|
16 |
here: http://icculus.org/physfs/docs/ |
|
17 |
||
71 | 18 |
|
19 |
||
488 | 20 |
UNIX: |
230 | 21 |
(If you got this code from CVS, run "./bootstrap" first.) |
54 | 22 |
|
230 | 23 |
Run ./configure --help and see what features can be optionally enabled or |
24 |
disabled. "./configure" does its best to pick optimal defaults for your |
|
25 |
platform. |
|
54 | 26 |
|
230 | 27 |
Run "make". |
28 |
As root, run "make install". |
|
29 |
If you get sick of the library, run "make uninstall" as root and it will |
|
30 |
remove all traces of the library from the system paths. |
|
54 | 31 |
|
488 | 32 |
Primary Unix development is done with GNU/Linux, but PhysicsFS is known to |
33 |
work out of the box with several flavors of Unix. It it doesn't work, patches |
|
34 |
to get it running can be sent to icculus@clutteredmind.org. |
|
35 |
||
283 | 36 |
|
488 | 37 |
BeOS: |
38 |
Use the "Unix" instructions, above. |
|
39 |
||
40 |
||
41 |
AtheOS: |
|
42 |
Use the "Unix" instructions, above. |
|
283 | 43 |
|
71 | 44 |
|
45 |
WIN32: |
|
283 | 46 |
If building with CygWin, mingw32 or something else that uses the GNU |
47 |
toolchain, follow the Unix instructions, above. |
|
230 | 48 |
|
488 | 49 |
If you're using Visual C++ 6, point it at "physfs.dsp" in the root of the |
50 |
source tree, and build. This will produce a "physfs.dll" and "physfs.lib" |
|
51 |
(shared library and import lib, respectively) in either a "Debug" or |
|
52 |
"Release" directory, depending on what configuration you chose to build. |
|
53 |
After building the lib, you can make sure it works by building the |
|
54 |
"test_physfs.dsp" project file, which will create "test_physfs.exe" in |
|
55 |
"Debug" or "Release". This EXE is linked against the DLL you built |
|
56 |
previously. |
|
89
2f9f1d02aaca
Updated win32 build instructions.
Ryan C. Gordon <icculus@icculus.org>
parents:
71
diff
changeset
|
57 |
|
590 | 58 |
If you're using Visual C++ 6 and want to generate a static LIB file, point |
59 |
it at "physfs_static.dsp" in the root of the source tree and build. This |
|
60 |
will produce a "physfs_static.lib" in either a "physfs_static_debug" |
|
61 |
or a "physfs_static_release" directory, depending on what configuration |
|
62 |
you chose to build. NOPE: "test_physfs.dsp" does not work with the |
|
63 |
statically linked build. |
|
64 |
||
488 | 65 |
Visual Studio.NET users should do the same thing, but use the "physfs.vcproj" |
66 |
and "test_physfs.vcproj" project files instead. |
|
283 | 67 |
|
590 | 68 |
NOTE: to change build options such as which drivers are loaded (ZIP, QPAK, |
69 |
etc.) modify the appropriate manifest constants under the Project Settings. |
|
70 |
By default the LIB version supports all drivers, but the DLL build does |
|
71 |
not support MVL or HOG file formats. |
|
72 |
||
283 | 73 |
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
|
74 |
|
d176cef27a77
Updated win32 build info, other tweaks.
Ryan C. Gordon <icculus@icculus.org>
parents:
205
diff
changeset
|
75 |
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
|
76 |
may not work. Patches are welcome. |
d176cef27a77
Updated win32 build info, other tweaks.
Ryan C. Gordon <icculus@icculus.org>
parents:
205
diff
changeset
|
77 |
|
91 | 78 |
If someone is willing to maintain prebuilt PhysicsFS DLLs, I'd like to hear |
79 |
from you; send an email to icculus@clutteredmind.org. |
|
80 |
||
187 | 81 |
MACOS 8/9: |
283 | 82 |
Double-click on "CWProjects.sit" in the root of the source tree. This will |
83 |
unpack into a folder called "Mac Classic Support", which has CodeWarrior 6 |
|
84 |
project files. |
|
85 |
||
86 |
Point CodeWarrior at "physfs.mcp" in that new folder, and build. This will |
|
87 |
produce a "PhysicsFS" or "PhysicsFS Debug" shared library, depending on what |
|
88 |
configuration you chose to build. After building the lib, you can make sure |
|
89 |
it works by building the "test_physfs.mcp" project file, which will create |
|
90 |
"test_physfs" or "test_physfs Debug". These binaries are linked against the |
|
91 |
DLLs you built previously. |
|
187 | 92 |
|
93 |
If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for |
|
94 |
the Mac, I'd like to hear from you; send an email to icculus@clutteredmind.org. |
|
95 |
||
96 |
||
283 | 97 |
|
98 |
MACOS X: |
|
99 |
You (currently) need to use the freeware Apple Developer Tools, which are |
|
100 |
based on the GNU toolchain. Fire up a terminal and run "cc"...if this reports |
|
101 |
"no input files" then you've got the tools installed. |
|
102 |
||
488 | 103 |
Follow the Unix directions, above (configure, make, make install). |
283 | 104 |
|
105 |
If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for |
|
106 |
MacOS X, I'd like to hear from you; send an email to icculus@clutteredmind.org. |
|
107 |
||
108 |
||
488 | 109 |
OS/2: |
110 |
You need EMX installed. I tried this on a stock Warp 4 install, no fixpaks. |
|
111 |
I used the latest EMX and patches (which are several years old now). You need |
|
112 |
to install link386.exe (Selective Install, "link object modules" option). Once |
|
113 |
EMX is installed correctly, unpack the source to PhysicsFS and run the script |
|
114 |
file "makeos2.cmd". I know this isn't ideal, but I wanted to have this build |
|
115 |
without users having to hunt down a "make" program (While several exist, EMX |
|
116 |
doesn't come with one). If someone wants to hack some REXX to make this a bit |
|
117 |
more piccky about recompiling, I'll accept the patch. |
|
118 |
||
119 |
If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for |
|
120 |
OS/2, I'd like to hear from you; send an email to icculus@clutteredmind.org. |
|
121 |
||
283 | 122 |
|
187 | 123 |
OTHER PLATFORMS: |
283 | 124 |
Many Unix-like platforms might "just work" with the GNU autoconf tools. Some |
125 |
of these platforms are known to have worked at one time, but have not been |
|
488 | 126 |
heavily tested, if tested at all. PhysicsFS is, as far as we know, 64-bit and |
127 |
byteorder clean, and is known to compile on several compilers across many |
|
128 |
platforms. To implement a new platform or archiver, please read the |
|
129 |
heavily-commented physfs_internal.h and look in the platform/ and archiver/ |
|
130 |
directories for examples. |
|
187 | 131 |
|
54 | 132 |
--ryan. (icculus@clutteredmind.org) |
133 |