Edit report at https://bugs.php.net/bug.php?id=63537&edit=1

 ID:                 63537
 Updated by:         paj...@php.net
 Reported by:        ajron at wp dot pl
 Summary:            vs2012 link error
 Status:             Open
 Type:               Bug
 Package:            Compile Failure
 Operating System:   Windows
 PHP Version:        Irrelevant
 Block user comment: N
 Private report:     N

 New Comment:

Hm, not sure what happens but here is the commit:

http://git.php.net/?p=php-
src.git;a=commitdiff;h=dabe89c6f36a03117e1614546dd90de80b9e90d4

I have to check why it is not present anymore :)


Previous Comments:
------------------------------------------------------------------------
[2012-11-16 09:25:55] ajron at wp dot pl

What does "master" mean?

I've tried stable build 5.3.18, 5.4.8 and snapshots php5.3-201211160830, php5.4-
201211160830, php-trunk-201211160830.

I've added to win32\build\confutils.js new compiler:
VC_VERSIONS[1700] = 'MSVC11 (Visual C++ 2012)';
VC_VERSIONS_SHORT[1700] = 'VC11';

During compilation (without config.w32 patch), I have error:

LINK : fatal error LNK1117: syntax error in option 'version:5.3.20'
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 
11.0\VC\BIN\cl.exe"' : return code '0x2'
Stop.

------------------------------------------------------------------------
[2012-11-16 08:50:27] paj...@php.net

did you try using master?

------------------------------------------------------------------------
[2012-11-16 08:33:43] ajron at wp dot pl

This problem is in latest stable releases: 5.3.18 and 5.4.8

------------------------------------------------------------------------
[2012-11-16 08:13:51] paj...@php.net

As far I remember I fixed that in all branches, can you try master, 5.5 or 
latest 
53/4 please?

------------------------------------------------------------------------
[2012-11-16 08:10:25] ajron at wp dot pl

Description:
------------
Microsoft linker version information option has format:
/VERSION:major[.minor]

The major and minor arguments are decimal numbers in the range 0 through 
65,535. 
The default is version 0.0.

Linker puts this version number in the PE header of the .EXE file or DLL. There 
is no room in the PE header to put more than 2 numbers. Linkers before vs2012 
skip extra numbers during linking, but vs2012 linker throws error.

The problem is in \win32\build\config.w32 file.

There is:

// General link flags
DEFINE("LDFLAGS", "/nologo /version:" +
        PHP_VERSION + "." + PHP_MINOR_VERSION + "." + PHP_RELEASE_VERSION); 

Should be:

// General link flags
DEFINE("LDFLAGS", "/nologo /version:" +
        PHP_VERSION + "." + PHP_MINOR_VERSION); 




------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=63537&edit=1

Reply via email to