internals:windows:libs:libpng

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
internals:windows:libs:libpng [2008/05/17 12:17] pajoyeinternals:windows:libs:libpng [2017/09/22 13:28] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ====== LibPNG Windows, How to compile ====== ====== LibPNG Windows, How to compile ======
  
-===== Building LibPng 1.2.29 =====+===== Available prebuilt libraries =====
  
 +All prebuilt libraries are available in the php-libs [[http://windows.php.net/downloads/php-sdk/|repositories]]
 +
 +For PHP suitable sources and up-to-date information see [[https://github.com/winlibs/libpng]]
 +
 +The filename format is:
 +
 +libpng-x.y.z-vcversion-asm.zip
 +
 +where x.y.z defines the version, vcversion which Visual C++ has been used and -asm tells if the ASM optimizations have been used or not (see the options below).
 +
 +===== Building LibPng 1.2.35 =====
  
 ==== Requirements ===== ==== Requirements =====
   * LibPNG Sources, [[http://www.libpng.org|]]   * LibPNG Sources, [[http://www.libpng.org|]]
-  * Zlib binaries and development files [[http://pecl2.php.net/downloads/php-windows-builds/php-libs/|]]+  * Zlib binaries and development files [[http://windows.php.net/downloads/php-sdk/|]]
   * Common tools used to compile PHP   * Common tools used to compile PHP
   * LibPNG Makefile {{internals:windows:libs:libpng.mak.txt|}}   * LibPNG Makefile {{internals:windows:libs:libpng.mak.txt|}}
 +  * LibPNG Dep File{{internals:windows:libs:libpng.dep.txt|}}
  
  
 ==== Configuration ===== ==== Configuration =====
  
-LibPNG can be compiled using various modes listed below:+LibPNG can be compiled using various modes. Only the following list can be used with PHP:
  
   * "libpng - Win32 DLL Release" based on "Win32 (x86) Dynamic-Link Library"   * "libpng - Win32 DLL Release" based on "Win32 (x86) Dynamic-Link Library"
Line 19: Line 31:
   * "libpng - Win32 DLL ASM Release" based on "Win32 (x86) Dynamic-Link Library"   * "libpng - Win32 DLL ASM Release" based on "Win32 (x86) Dynamic-Link Library"
   * "libpng - Win32 DLL ASM Debug" based on "Win32 (x86) Dynamic-Link Library"   * "libpng - Win32 DLL ASM Debug" based on "Win32 (x86) Dynamic-Link Library"
-  * "libpng - Win32 DLL VB" based on "Win32 (x86) Dynamic-Link Library" 
   * "libpng - Win32 LIB Release" based on "Win32 (x86) Static Library"   * "libpng - Win32 LIB Release" based on "Win32 (x86) Static Library"
   * "libpng - Win32 LIB Debug" based on "Win32 (x86) Static Library"   * "libpng - Win32 LIB Debug" based on "Win32 (x86) Static Library"
Line 31: Line 42:
 The ASM versions do not work yet with Visual C++ 8 (VS2005) or later. We did not have the time to fix the .asm files. Contributions welcome (both for php and for the libpng project). The ASM versions do not work yet with Visual C++ 8 (VS2005) or later. We did not have the time to fix the .asm files. Contributions welcome (both for php and for the libpng project).
  
 +Download the {{internals:windows:libs:libpng.mak.txt|libpng Makefile}} and {{internals:windows:libs:libpng.dep.txt|dep file}} and remove the .txt extension.
  
  
Line 37: Line 49:
 This step describe the process for Visual C++ 6. It should work for 2k3/5/8 as well but it is not yet tested. However you can use the VC7.1 project files in the libpng archive if the libpng.mak fails. This step describe the process for Visual C++ 6. It should work for 2k3/5/8 as well but it is not yet tested. However you can use the VC7.1 project files in the libpng archive if the libpng.mak fails.
  
-Copy the make file to the project\vc6 directory To compile libpng, simply go to th projects directory of the libpng source and run:+Copy the make file to the project\vc6 directory To compile libpng, simply go to th proj==ects directory of the libpng source and run:
  
 <code bash> <code bash>
Line 43: Line 55:
 nmake /f libpng.mak CFG="libpng - Win32 LIB Release"  PHP_SDK_PATH="c:\php_sdk\" nmake /f libpng.mak CFG="libpng - Win32 LIB Release"  PHP_SDK_PATH="c:\php_sdk\"
 </code> </code>
 +
 +> If the Platform has changed between two different builds (win32 to x64 or x64 to win32), it is necessary to clean the builds before building a dllor  a lib. If the objs have been built for a different platform you will get a linker error (machine does not match).
 +
 +==== Install in the SDK ====
 +
 +To be written
 +
  
  
internals/windows/libs/libpng.1211026654.txt.gz · Last modified: 2017/09/22 13:28 (external edit)