|
|
-
- The latest PhysicsFS information and releases can be found at:
- https://icculus.org/physfs/
-
- Building is (ahem) very easy.
-
-
- ALL PLATFORMS:
-
- Please read the text file LICENSE.txt in the root of the source tree.
- 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:
-
- https://icculus.org/physfs/docs/
-
-
-
- BUILD IT WITH YOUR OWN PROGRAM:
-
- If you don't care about formal packaging: just add everything in the "src"
- directory to whatever you use to build your program and compile it along with
- everything else, and you're done. It should compile with any reasonable
- ANSI C compiler, should build cleanly even with excessive compiler warnings
- enabled, needs no extra configuration, and allows static linking.
- WinRT and Haiku need C++ compilers for their system APIs, but if you aren't on
- these platforms and don't have a C++ compiler, don't build the .cpp files.
- Likewise: Apple platforms (macOS, iOS, etc) need an Objective-C compiler, but
- if you aren't on these platforms and don't have a Objective-C compiler, don't
- build the .m file. Everything you need is in the .c sources.
-
- If this all worked for your specific project, you can stop reading now.
-
-
-
- UNIX:
-
- You will need CMake (https://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
- or Ninja project files or whatever, if you prefer these.
-
- Run "make". PhysicsFS will now build.
-
- As root, run "make install".
- If you get sick of the library, run "make uninstall" 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.
-
-
- 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 (https://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 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. Note that Windows 98 and later _should_
- work if you use the Microsoft Layer for Unicode (UNICOWS.DLL) to provide
- some missing system APIs, but this is no longer tested as of PhysicsFS 2.1.0.
- PhysicsFS 2.0.x is known to work with Windows 95 without UNICOWS.DLL.
-
- PhysicsFS works on 32-bit and 64-bit Windows. There is no 16-bit Windows
- support at all. Windows RT is covered below.
-
-
- Windows RT:
-
- Windows RT (Windows Phone, Windows Store, UWP) 8.0 and later are supported.
- Make sure you include both physfs_platform_windows.c _and_
- physfs_platform_winrt.cpp in your build, and that the C++ file has
- "Consume Windows Runtime Extension" set to "Yes" in its Visual Studio
- properties (from the command line, you want to compile this file with the
- "/ZW" compiler switch). CMake can, in theory, generate a project file for
- WinRT if you pick a recent Visual Studio target, choose manual cross-compile
- options, and set the system name to "WindowsPhone" or "WindowsStore" and the
- correct OS version (8.0 or later).
-
-
- PocketPC/WindowsCE:
-
- Support for PocketPC was removed in PhysicsFS 2.1.0. This was known to work
- in the 1.0 releases, but wasn't tested in 2.0 and later. PhysicsFS should
- work on modern Windows Phones (see "Windows RT" section).
-
-
- macOS:
-
- You will need CMake (https://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.
-
-
- MAC OS 8/9 ("Mac OS Classic"):
-
- 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 modern macOS, though: see above.
-
-
- Emscripten:
-
- Use the "Unix" instructions, above. You can install the Emscripten SDK and use
- the extras/buildbot-emscripten.sh script to automate this for you.
-
-
- BeOS, Zeta, YellowTab:
-
- BeOS support was dropped in PhysicsFS 2.1.0. Consider installing Haiku, which
- we still support.
-
-
- Haiku:
-
- Use the "Unix" instructions, above.
-
-
- OS/2:
-
- OS/2 is known to work with OpenWatcom and GCC-based compilers. I couldn't get
- an OS/2 port of CMake to generate OpenWatcom project files (although it should
- be able to do that in theory), it should be able to do Unix Makefiles with
- GCC. It might be easier to just compile PhysicsFS along with the rest of
- your project on this platform.
-
-
-
- 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 at the physfs_platform_* and physfs_archiver_*
- source files for examples.
-
- --ryan. (icculus@icculus.org)
-
|