Re: building php 5.2.1 on windows
| From: | Rob | Date: | Thu, 09 Aug 2007 22:26:00 +0000 |
| Subject: | Re: building php 5.2.1 on windows | ||
| References: | 1 | Groups: | php.windows |
| Request: | Send a blank email to php-windows+get-28360@lists.php.net to get a copy of this message | ||
Hi Rashimi,
Rashmi Badan wrote:
Hi, I'm trying to build php 5.2.1 on windows and am hitting the following problem at link time .... Creating library Release\php5ts.lib and object Release\php5ts.exp libxml.obj : error LNK2019: unresolved external symbol _xmlDllMain referenced in function _DllMain@12 Release\php5ts.dll : fatal error LNK1120: 1 unresolved externals NMAKE : fatal error U1077: '"C:\Program Files\Intel\CPP\Compiler81\IA32\bin\icl. exe"' : return code '0x460' I am linking it to a libxml2.lib that I have compiled. When I do a dumpbin i do not see the _xmlDllMain symbol. I tried downloading some libxml2 binaries but they didn't have that symbol either.That symbol is not made available by default in the builds. You have a couple of options: 1) Use my libxml2 builds - the ones that the official binaries are built off of. http://ctindustries.net/libxml/ I haven't had a chance to publish the .29 build and was not satisfied with the .27 and .28 builds to build those, so all I have are .26 until I have time. 2) Build libxml2 2.6.29 from source (must compile with a MS compiler) and have PHP link against the libxml2_a_dll.lib file. I added that to the default libxml2 MSVC build but still need to commit the additon to the PHP build system (will be post 5.2.4). Once done, then the official libxml2 binaries (2.6.29+) will be able to be used. all you need to do is change the config.w32 file in ext/libxml to: if (CHECK_LIB("libxml2_a_dll.lib;libxml2_a.lib", "libxml") && *AND* add the LIBXML_STATIC_FOR_DLL flag ADD_FLAG("CFLAGS_LIBXML", "/D LIBXML_STATIC /D LIBXML_STATIC_FOR_DLL "); Rob