INSTALL.txt 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. The latest PhysicsFS information and releases can be found at:
  2. https://icculus.org/physfs/
  3. Building is (ahem) very easy.
  4. ALL PLATFORMS:
  5. Please read the text file LICENSE.txt in the root of the source tree.
  6. The license is extremely liberal, even to closed-source, commercial
  7. applications.
  8. If you've got Doxygen (http://www.doxygen.org/) installed, you can run it
  9. without any command line arguments in the root of the source tree to generate
  10. the API reference (or build the "docs" target from your build system). This
  11. is optional. You can browse the API docs online here:
  12. https://icculus.org/physfs/docs/
  13. UNIX:
  14. You will need CMake (https://www.cmake.org/) 2.4 or later installed.
  15. Make a directory, wherever you like. This will be your build directory.
  16. Chdir to your build directory. Run "cmake /where/i/unpacked/physfs" to
  17. generate Makefiles. You can then run "ccmake ." and customize the build,
  18. but the defaults are probably okay. You can have CMake generate KDevelop
  19. or Ninja project files or whatever, if you prefer these.
  20. Run "make". PhysicsFS will now build.
  21. As root, run "make install".
  22. If you get sick of the library, run "make uninstall" as root
  23. and it will remove all traces of the library from the system paths.
  24. Once you are satisfied, you can delete the build directory.
  25. Primary Unix development is done with GNU/Linux, but PhysicsFS is known to
  26. work out of the box with several flavors of Unix. It it doesn't work, patches
  27. to get it running can be sent to icculus@icculus.org.
  28. Windows:
  29. If building with Cygwin, mingw32, MSYS, or something else that uses the GNU
  30. toolchain, follow the Unix instructions, above.
  31. If you want to use Visual Studio, nmake, or the Platform SDK, you will need
  32. CMake (https://www.cmake.org/) 2.4 or later installed. Point CMake at the
  33. CMakeLists.txt file in the root of the source directory and hit the
  34. "Configure" button. After telling it what type of compiler you are targeting
  35. (Borland, Visual Studio, etc), CMake will process for while and then give you
  36. a list of options you can change (what archivers you want to support, etc).
  37. If you aren't sure, the defaults are probably fine. Hit the "Configure"
  38. button again, then "OK" once configuration has completed with options that
  39. match your liking. Now project files for your favorite programming
  40. environment will be generated for you in the directory you specified.
  41. Go there and use them to build PhysicsFS.
  42. PhysicsFS will only link directly against system libraries that have existed
  43. since Windows NT 3.51. If there's a newer API we want to use, we try to
  44. dynamically load it at runtime and fallback to a reasonable behaviour when
  45. we can't find it...this is used for Unicode support and locating
  46. user-specific directories, etc. Note that OSes based on Windows 95 _should_
  47. work if you use the Microsoft Layer for Unicode (UNICOWS.DLL) to provide
  48. some missing system APIs, but this is no longer tested as of PhysicsFS 2.1.0.
  49. PhysicsFS 2.0.x still works with Windows 95 without UNICOWS.DLL.
  50. PhysicsFS works on 32-bit and 64-bit Windows. There is no 16-bit Windows
  51. support at all. Reports of success and problems can go to Ryan at
  52. icculus@icculus.org ...
  53. PocketPC/WindowsCE:
  54. Support for PocketPC was removed in PhysicsFS 2.1.0. This was known to work
  55. in the 1.0 releases, but wasn't tested in 2.0 and later. PhysicsFS is not
  56. known to work on Windows Phone 7 (the latest Microsoft mobile tech at the
  57. time of this writing).
  58. macOS:
  59. You will need CMake (https://www.cmake.org/) 2.4 or later installed.
  60. You can either generate a Unix makefile with CMake, or generate an Xcode
  61. project, whichever makes you more comfortable.
  62. PowerPC and Intel Macs should both be supported.
  63. MAC OS 8/9 ("Mac OS Classic"):
  64. Classic Mac OS support has been dropped in PhysicsFS 2.0. Apple hasn't updated
  65. pre-OSX versions in more than a decade at this point, none of the hardware
  66. they've shipped will boot it for almost as many years, and finding
  67. developer tools for it is becoming almost impossible. As the switch to Intel
  68. hardware has removed the "Classic" emulation environment, it was time to
  69. remove support from PhysicsFS. That being said, the PhysicsFS 1.0 branch can
  70. still target back to Mac OS 8.5, so you can use that if you need support for
  71. this legacy OS. We still very much support modern macOS, though: see below.
  72. BeOS, Zeta, YellowTab:
  73. BeOS support was dropped in PhysicsFS 2.1.0. Consider installing Haiku, which
  74. we still support.
  75. Haiku:
  76. Use the "Unix" instructions, above. The CMake port to BeOS is fairly new at
  77. the time of this writing, but it works. You can get a build of CMake from
  78. bebits.com or build it yourself from source from cmake.org.
  79. OS/2:
  80. OS/2 is known to work with OpenWatcom and GCC-based compilers. I couldn't get
  81. an OS/2 port of CMake to generate OpenWatcom project files (although it should
  82. be able to do that in theory), it should be able to do Unix Makefiles with
  83. GCC. It might be easier to just compile PhysicsFS along with the rest of
  84. your project on this platform.
  85. OTHER PLATFORMS:
  86. Many Unix-like platforms might "just work" with CMake. Some of these platforms
  87. are known to have worked at one time, but have not been heavily tested, if
  88. tested at all. PhysicsFS is, as far as we know, 64-bit and byteorder clean,
  89. and is known to compile on several compilers across many platforms. To
  90. implement a new platform or archiver, please read the heavily-commented
  91. physfs_internal.h and look at the platform_* and archiver_* source files
  92. for examples.
  93. --ryan. (icculus@icculus.org)