Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在Windows上使用静态ldap库编译PHP 7.3_Php_Windows_Ldap - Fatal编程技术网

无法在Windows上使用静态ldap库编译PHP 7.3

无法在Windows上使用静态ldap库编译PHP 7.3,php,windows,ldap,Php,Windows,Ldap,我正在尝试编译启用ldap的PHP7.3(——使用ldap)。当我使用标志--with ldap或--with ldap=static调用cscript configure.js时,PHP 7.3的构建失败,并显示以下错误消息: oldap32_a.lib(controls.obj) : error LNK2005: ldap_control_free already defined in Wldap32.Lib(WLDAP32.dll) oldap32_a.lib(controls.obj)

我正在尝试编译启用ldap的PHP7.3(
——使用ldap
)。当我使用标志
--with ldap
--with ldap=static
调用
cscript configure.js
时,PHP 7.3的构建失败,并显示以下错误消息:

oldap32_a.lib(controls.obj) : error LNK2005: ldap_control_free already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(controls.obj) : error LNK2005: ldap_controls_free already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(extended.obj) : error LNK2005: ldap_extended_operation already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(open.obj) : error LNK2005: ldap_init already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(unbind.obj) : error LNK2005: ldap_unbind_s already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(free.obj) : error LNK2005: ldap_memfree already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(error.obj) : error LNK2005: ldap_err2string already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(error.obj) : error LNK2005: ldap_parse_result already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(getvalues.obj) : error LNK2005: ldap_count_values_len already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(getvalues.obj) : error LNK2005: ldap_get_values_len already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(getvalues.obj) : error LNK2005: ldap_value_free_len already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(getdn.obj) : error LNK2005: ldap_dn2ufn already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(getdn.obj) : error LNK2005: ldap_explode_dn already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(getdn.obj) : error LNK2005: ldap_get_dn already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(result.obj) : error LNK2005: ldap_msgfree already defined in Wldap32.Lib(WLDAP32.dll)
oldap32_a.lib(result.obj) : error LNK2005: ldap_result already defined in Wldap32.Lib(WLDAP32.dll)
olber32_a.lib(io.obj) : error LNK2005: ber_alloc_t already defined in Wldap32.Lib(WLDAP32.dll)
olber32_a.lib(io.obj) : error LNK2005: ber_free already defined in Wldap32.Lib(WLDAP32.dll)
olber32_a.lib(io.obj) : error LNK2005: ber_init already defined in Wldap32.Lib(WLDAP32.dll)
olber32_a.lib(memory.obj) : error LNK2005: ber_bvfree already defined in Wldap32.Lib(WLDAP32.dll)
olber32_a.lib(decode.obj) : error LNK2005: ber_scanf already defined in Wldap32.Lib(WLDAP32.dll)
C:\path\to\php-7.3.19\x64\Release_TS\php7ts.dll : fatal error LNK1169: one or more multiply defined symbols found
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\link.exe"' : return code '0x491'
但是当我用
--with ldap=shared
调用
cscript configure.js
时,构建结束时没有错误,我得到一个额外的
php\u ldap.dll
文件。所以问题是

  • 为什么我会犯这个错误

  • 如何使用标志
    ——ldap=static
    编译PHP7.3