Upload 2.0.2
[physicsfs] / INSTALL.txt
1
2 The latest PhysicsFS information and releases can be found at:
3   http://icculus.org/physfs/
4
5 Building is (ahem) very easy.
6
7
8 ALL PLATFORMS:
9
10 Please understand your rights and mine: read the text file LICENSE.txt in the
11  root of the source tree. If you can't abide by it, delete this source tree
12  now. The license is extremely liberal, even to closed-source, commercial
13  applications.
14
15 If you've got Doxygen (http://www.doxygen.org/) installed, you can run it
16  without any command line arguments in the root of the source tree to generate
17  the API reference (or build the "docs" target from your build system). This
18  is optional. You can browse the API docs online here:
19
20     http://icculus.org/physfs/docs/
21
22
23
24
25 UNIX:
26
27 You will need CMake (http://www.cmake.org/) 2.4 or later installed.
28
29 Make a directory, wherever you like. This will be your build directory.
30
31 Chdir to your build directory. Run "cmake /where/i/unpacked/physfs" to
32  generate Makefiles. You can then run "ccmake ." and customize the build,
33  but the defaults are probably okay. You can have CMake generate KDevelop
34  project files if you prefer these.
35
36 Run "make". PhysicsFS will now build.
37
38 As root, run "make install".
39  If you get sick of the library, run "xargs rm < install_manifest.txt" as root
40  and it will remove all traces of the library from the system paths.
41
42 Once you are satisfied, you can delete the build directory.
43
44 Primary Unix development is done with GNU/Linux, but PhysicsFS is known to
45  work out of the box with several flavors of Unix. It it doesn't work, patches
46  to get it running can be sent to icculus@icculus.org.
47
48
49
50 BeOS, Zeta, and Haiku:
51
52 Use the "Unix" instructions, above. The CMake port to BeOS is fairly new at
53  the time of this writing, but it works. You can get a build of CMake from
54  bebits.com or build it yourself from source from cmake.org.
55
56
57
58 Windows:
59
60 If building with Cygwin, mingw32, MSYS, or something else that uses the GNU
61  toolchain, follow the Unix instructions, above.
62
63 If you want to use Visual Studio, nmake, or the Platform SDK, you will need
64  CMake (http://www.cmake.org/) 2.4 or later installed. Point CMake at the
65  CMakeLists.txt file in the root of the source directory and hit the
66  "Configure" button. After telling it what type of compiler you are targeting
67  (Borland, Visual Studio, etc), CMake will process for while and then give you
68  a list of options you can change (what archivers you want to support, etc).
69  If you aren't sure, the defaults are probably fine. Hit the "Configure"
70  button again, then "OK" once configuration has completed with options that
71  match your liking. Now project files for your favorite programming
72  environment will be generated for you in the directory you specified.
73  Go there and use them to build PhysicsFS.
74
75 PhysicsFS will only link directly against system libraries that have existed
76  since Windows 95 and Windows NT 3.51. If there's a newer API we want to use,
77  we try to dynamically load it at runtime and fallback to a reasonable
78  behaviour when we can't find it...this is used for Unicode support and
79  locating user-specific directories, etc.
80
81 PhysicsFS has not been tested on 64-bit Windows, but probably works. There is
82  no 16-bit Windows support at all. Reports of success and problems can go to
83  Ryan at icculus@icculus.org ...
84
85 If someone is willing to maintain prebuilt PhysicsFS DLLs, I'd like to hear
86 from you; send an email to icculus@icculus.org ...
87
88
89
90 PocketPC/WindowsCE:
91
92 Code exists for PocketPC support, and there are shipping titles that used
93  PhysicsFS 1.0 on PocketPC...but it isn't tested in 2.0, and is probably
94  broken with the new build system. Please send patches.
95
96
97
98 MAC OS 8/9:
99
100 Classic Mac OS support has been dropped in PhysicsFS 2.0. Apple hasn't updated
101  pre-OSX versions in more than a decade at this point, none of the hardware
102  they've shipped will boot it for almost as many years, and finding
103  developer tools for it is becoming almost impossible. As the switch to Intel
104  hardware has removed the "Classic" emulation environment, it was time to
105  remove support from PhysicsFS. That being said, the PhysicsFS 1.0 branch can
106  still target back to Mac OS 8.5, so you can use that if you need support for
107  this legacy OS. We still very much support Mac OS X, though: see below.
108
109
110
111 MAC OS X:
112
113 You will need CMake (http://www.cmake.org/) 2.4 or later installed.
114
115 You can either generate a Unix makefile with CMake, or generate an Xcode
116  project, whichever makes you more comfortable.
117
118 PowerPC and Intel Macs should both be supported.
119
120 If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for
121  Mac OS X, I'd like to hear from you; send an email to icculus@icculus.org.
122
123
124
125 OS/2:
126
127 You need Innotek GCC and libc installed (or kLIBC). I tried this on a stock
128  Warp 4 install, no fixpaks. You need to install link386.exe (Selective
129  Install, "link object modules" option). Once klibc and GCC are installed
130  correctly, unpack the source to PhysicsFS and run the script
131  file "makeos2.cmd". I know this isn't ideal, but I wanted to have this build
132  without users having to hunt down a "make" program.
133
134 Someone please port CMake to OS/2. Ideally I'd like to be able to target
135  Innotek GCC and OpenWatcom with CMake.
136
137 If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for
138  OS/2, I'd like to hear from you; send an email to icculus@icculus.org.
139
140
141
142 OTHER PLATFORMS:
143
144 Many Unix-like platforms might "just work" with CMake. Some of these platforms
145  are known to have worked at one time, but have not been heavily tested, if
146  tested at all. PhysicsFS is, as far as we know, 64-bit and byteorder clean,
147  and is known to compile on several compilers across many platforms. To
148  implement a new platform or archiver, please read the heavily-commented
149  physfs_internal.h and look in the platform/ and archiver/ directories for
150  examples.
151
152 --ryan. (icculus@icculus.org)
153