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.txt in the root of the source tree. If you can't abide by it, delete this source tree now. The license is extremely liberal, even to closed-source, commercial applications. 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 (or build the "docs" target from your build system). This is optional. You can browse the API docs online here: http://icculus.org/physfs/docs/ UNIX: You will need CMake (http://www.cmake.org/) 2.4 or later installed. Make a directory, wherever you like. This will be your build directory. Chdir to your build directory. Run "cmake /where/i/unpacked/physfs" to generate Makefiles. You can then run "ccmake ." and customize the build, but the defaults are probably okay. You can have CMake generate KDevelop project files if you prefer these. Run "make". PhysicsFS will now build. As root, run "make install". If you get sick of the library, run "xargs rm < install_manifest.txt" as root and it will remove all traces of the library from the system paths. Once you are satisfied, you can delete the build directory. Primary Unix development is done with GNU/Linux, but PhysicsFS is known to work out of the box with several flavors of Unix. It it doesn't work, patches to get it running can be sent to icculus@icculus.org. BeOS, Zeta, and Haiku: Use the "Unix" instructions, above. The CMake port to BeOS is fairly new at the time of this writing, but it works. You can get a build of CMake from bebits.com or build it yourself from source from cmake.org. Windows: If building with Cygwin, mingw32, MSYS, or something else that uses the GNU toolchain, follow the Unix instructions, above. If you want to use Visual Studio, nmake, or the Platform SDK, you will need CMake (http://www.cmake.org/) 2.4 or later installed. Point CMake at the CMakeLists.txt file in the root of the source directory and hit the "Configure" button. After telling it what type of compiler you are targeting (Borland, Visual Studio, etc), CMake will process for while and then give you a list of options you can change (what archivers you want to support, etc). If you aren't sure, the defaults are probably fine. Hit the "Configure" button again, then "OK" once configuration has completed with options that match your liking. Now project files for your favorite programming environment will be generated for you in the directory you specified. Go there and use them to build PhysicsFS. PhysicsFS will only link directly against system libraries that have existed since Windows 95 and Windows NT 3.51. If there's a newer API we want to use, we try to dynamically load it at runtime and fallback to a reasonable behaviour when we can't find it...this is used for Unicode support and locating user-specific directories, etc. PhysicsFS has not been tested on 64-bit Windows, but probably works. There is no 16-bit Windows support at all. Reports of success and problems can go to Ryan at icculus@icculus.org ... If someone is willing to maintain prebuilt PhysicsFS DLLs, I'd like to hear from you; send an email to icculus@icculus.org ... PocketPC/WindowsCE: Code exists for PocketPC support, and there are shipping titles that used PhysicsFS 1.0 on PocketPC...but it isn't tested in 2.0, and is probably broken with the new build system. Please send patches. MAC OS 8/9: Classic Mac OS support has been dropped in PhysicsFS 2.0. Apple hasn't updated pre-OSX versions in more than a decade at this point, none of the hardware they've shipped will boot it for almost as many years, and finding developer tools for it is becoming almost impossible. As the switch to Intel hardware has removed the "Classic" emulation environment, it was time to remove support from PhysicsFS. That being said, the PhysicsFS 1.0 branch can still target back to Mac OS 8.5, so you can use that if you need support for this legacy OS. We still very much support Mac OS X, though: see below. MAC OS X: You will need CMake (http://www.cmake.org/) 2.4 or later installed. You can either generate a Unix makefile with CMake, or generate an Xcode project, whichever makes you more comfortable. PowerPC and Intel Macs should both be supported. If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for Mac OS X, I'd like to hear from you; send an email to icculus@icculus.org. OS/2: You need Innotek GCC and libc installed (or kLIBC). I tried this on a stock Warp 4 install, no fixpaks. You need to install link386.exe (Selective Install, "link object modules" option). Once klibc and GCC are installed correctly, unpack the source to PhysicsFS and run the script file "makeos2.cmd". I know this isn't ideal, but I wanted to have this build without users having to hunt down a "make" program. Someone please port CMake to OS/2. Ideally I'd like to be able to target Innotek GCC and OpenWatcom with CMake. If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for OS/2, I'd like to hear from you; send an email to icculus@icculus.org. OTHER PLATFORMS: Many Unix-like platforms might "just work" with CMake. Some of these platforms are known to have worked at one time, but have not been heavily tested, if tested at all. PhysicsFS is, as far as we know, 64-bit and byteorder clean, and is known to compile on several compilers across many platforms. 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@icculus.org)