internals:windows:libs:libpng
no way to compare when less than two revisions

Differences

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


Previous revision
Next revision
internals:windows:libs:libpng [2013/01/24 13:18] – [Available prebuilt libraries] ab
Line 1: Line 1:
 +====== LibPNG Windows, How to compile ======
 +
 +===== Available prebuilt libraries =====
 +
 +All prebuilt libraries are available in the php-libs [[http://windows.php.net/downloads/php-sdk/|repositories]]
 +
 +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 =====
 +  * LibPNG Sources, [[http://www.libpng.org|]]
 +  * Zlib binaries and development files [[http://pecl2.php.net/downloads/php-windows-builds/php-libs/|]]
 +  * Common tools used to compile PHP
 +  * LibPNG Makefile {{internals:windows:libs:libpng.mak.txt|}}
 +  * LibPNG Dep File{{internals:windows:libs:libpng.dep.txt|}}
 +
 +
 +==== Configuration =====
 +
 +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 Debug" 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 LIB Release" based on "Win32 (x86) Static Library"
 +  * "libpng - Win32 LIB Debug" based on "Win32 (x86) Static Library"
 +  * "libpng - Win32 LIB ASM Release" based on "Win32 (x86) Static Library"
 +  * "libpng - Win32 LIB ASM Debug" based on "Win32 (x86) Static Library"
 +
 +PHP uses "libpng - Win32 LIB ASM Release" and "libpng - Win32 LIB ASM Debug" respectively for the normal and debug PHP builds
 +
 +One of these option has to be used while calling the makefile.
 +
 +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.
 +
 +
 +==== Compile =====
 +
 +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 proj==ects directory of the libpng source and run:
 +
 +<code bash>
 +cd c:\build_php_deps\libpng1229\projects\
 +nmake /f libpng.mak CFG="libpng - Win32 LIB Release"  PHP_SDK_PATH="c:\php_sdk\"
 +</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.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1