Updated INSTALL.txt with updated info.

This commit is contained in:
Ryan C. Gordon 2007-03-11 10:16:15 +00:00
parent 2c506f8ce8
commit 5f0aa93cc7
1 changed files with 92 additions and 74 deletions

View File

@ -9,126 +9,144 @@ ALL PLATFORMS:
Please understand your rights and mine: read the text file LICENSE.txt in the 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 root of the source tree. If you can't abide by it, delete this source tree
now. 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 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 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 the API reference (or build the "docs" target from your build system). This
here: http://icculus.org/physfs/docs/ is optional. You can browse the API docs online here:
http://icculus.org/physfs/docs/
UNIX: UNIX:
(If you got this code from CVS, run "./bootstrap" first.)
Run ./configure --help and see what features can be optionally enabled or You will need CMake (http://www.cmake.org/) 2.4 or later installed.
disabled. "./configure" does its best to pick optimal defaults for your
platform. Run "cmake ." in the root of the source directory 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.
Run "make".
As root, run "make install". As root, run "make install".
If you get sick of the library, run "make uninstall" as root and it will If you get sick of the library, run "xargs rm < install_manifest.txt" as root
remove all traces of the library from the system paths. and it will remove all traces of the library from the system paths.
Primary Unix development is done with GNU/Linux, but PhysicsFS is known to 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 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. to get it running can be sent to icculus@icculus.org.
BeOS: BeOS:
Use the "Unix" instructions, above.
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 it from bebits.com ...
AtheOS/Syllable:
Use the "Unix" instructions, above.
Windows:
WIN32:
If building with CygWin, mingw32 or something else that uses the GNU If building with CygWin, mingw32 or something else that uses the GNU
toolchain, follow the Unix instructions, above. toolchain, follow the Unix instructions, above.
If you're using Visual C++ 6, point it at "physfs.dsp" in the root of the If you want to use Visual Studio, nmake, or the Platform SDK, you will need
source tree, and build. This will produce a "physfs.dll" and "physfs.lib" CMake (http://www.cmake.org/) 2.4 or later installed. Point CMake at the
(shared library and import lib, respectively) in either a "Debug" or CMakeLists.txt file in the root of the source directory and it will generate
"Release" directory, depending on what configuration you chose to build. project files for you.
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.
If you're using Visual C++ 6 and want to generate a static LIB file, point PhysicsFS will only link directly against system libraries that have existed
it at "physfs_static.dsp" in the root of the source tree and build. This since Windows 95 and Windows NT 3.51. If there's a newer API we want to use,
will produce a "physfs_static.lib" in either a "physfs_static_debug" we try to dynamically load it at runtime and fallback to a reasonable
or a "physfs_static_release" directory, depending on what configuration behaviour when we can't find it...this is used for Unicode support and
you chose to build. NOTE: "test_physfs.dsp" does not work with the locating user-specific directories, etc.
statically linked build.
Visual Studio.NET users should do the same thing, but use the "physfs.vcproj" PhysicsFS has not been tested on 64-bit Windows, but probably works. There is
and "test_physfs.vcproj" project files instead. no 16-bit Windows support at all. Reports of success and problems can go to
Ryan at icculus@icculus.org ...
NOTE: to change build options such as which drivers are loaded (ZIP, QPAK,
etc.) modify the appropriate manifest constants under the Project Settings.
By default the LIB version supports all drivers, but the DLL build does
not support MVL or HOG file formats.
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 If someone is willing to maintain prebuilt PhysicsFS DLLs, I'd like to hear
from you; send an email to icculus@icculus.org. 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:
MACOS 8/9:
Double-click on "CWProjects.sit" in the root of the source tree. This will 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 unpack into a folder called "Mac Classic Support", which has CodeWarrior 6
project files. project files.
Point CodeWarrior at "physfs.mcp" in that new folder, and build. This will Point CodeWarrior at "physfs.mcp" in that new folder, and build. This will
produce a "PhysicsFS" or "PhysicsFS Debug" shared library, depending on what produce a "PhysicsFS" or "PhysicsFS Debug" shared library, depending on what
configuration you chose to build. After building the lib, you can make sure 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 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 "test_physfs" or "test_physfs Debug". These binaries are linked against the
DLLs you built previously. DLLs you built previously.
PhysicsFS builds for classic Mac OS do not require CarbonLib...they use
OS 8 (8.5?) APIs exclusively.
If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for 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@icculus.org. the Mac, I'd like to hear from you; send an email to icculus@icculus.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.
Follow the Unix directions, above (configure, make, make install). 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 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@icculus.org. Mac OS X, I'd like to hear from you; send an email to icculus@icculus.org.
OS/2: OS/2:
You need EMX installed. I tried this on a stock Warp 4 install, no fixpaks. You need EMX installed. I tried this on a stock Warp 4 install, no fixpaks.
I used the latest EMX and patches (which are several years old now). You need I used the latest EMX and patches (which are several years old now). You need
to install link386.exe (Selective Install, "link object modules" option). Once to install link386.exe (Selective Install, "link object modules" option). Once
EMX is installed correctly, unpack the source to PhysicsFS and run the script EMX is 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 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 (While several exist, EMX without users having to hunt down a "make" program (While several exist, EMX
doesn't come with one). If someone wants to hack some REXX to make this a bit doesn't come with one). If someone wants to hack some REXX to make this a bit
more picky about recompiling, I'll accept the patch. more picky about recompiling, I'll accept the patch.
Modernizing this for post-EMX systems or OpenWatcom may be good solutions, too.
Send patches. And port CMake.
If someone is willing to maintain prebuilt PhysicsFS Shared Libraries for 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. OS/2, I'd like to hear from you; send an email to icculus@icculus.org.
OTHER PLATFORMS: 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 Many Unix-like platforms might "just work" with CMake. Some of these platforms
heavily tested, if tested at all. PhysicsFS is, as far as we know, 64-bit and are known to have worked at one time, but have not been heavily tested, if
byteorder clean, and is known to compile on several compilers across many tested at all. PhysicsFS is, as far as we know, 64-bit and byteorder clean,
platforms. To implement a new platform or archiver, please read the and is known to compile on several compilers across many platforms. To
heavily-commented physfs_internal.h and look in the platform/ and archiver/ implement a new platform or archiver, please read the heavily-commented
directories for examples. physfs_internal.h and look in the platform/ and archiver/ directories for
examples.
--ryan. (icculus@icculus.org) --ryan. (icculus@icculus.org)