building php4 cvs for win32, debug runs ok, release crashes with access violation

From: Date: Fri, 01 Oct 1999 07:40:07 +0000
Subject: building php4 cvs for win32, debug runs ok, release crashes with access violation
Groups: php.version4 
Request: Send a blank email to php-version4+get-5052@lists.php.net to get a copy of this message
Hello, I'm currently busy with building & testing php4 cvs with MSVC++ 6 SP3 on WinNT4SP5 with Apache 1.3.9 (using php4 as a module). I did the following things to be able to get php.exe,php4nts.dll and php_mysql.dll: -------BEGIN------- install cygnus full distribution md c:\tmp (fix for bison: bad address ???) md c:\projects use cvs at phpnet to checkout php4 c:\projects\php4 bindlib_w32 c:\projects\bindlib_w32 use cvs at zend to checkout zend c:\projects\zend TSRM c:\projects\tsrm get number.tar.gz from phpnet and extract it to c:\projects\php4 (with subdirs) set tools\options\directories\include in msvc++ to include: c:\projects\php4 c:\projects\bindlib_w32 c:\projects\zend c:\projects\tsrm open php4 workspace in c:\projects\php4 add bindlib project to workspace php4 remove libzend.lib & resolv.lib from link options in php4dll add dependency for bindlib in php4dll added sapi\cgi\cgi_main.c in php4 project and removed cgi_main.c since it doesn't exist at c:\projects\php4\cgi_main.c add mysql project to workspace php4 removed php4nts.lib from link options in mysql project add dependency for php4dll in mysql copy lib & include subdirs of mysql to c:\projects\mysql add c:\projects\mysql\lib\debug in the tools\options\directories\library options in msvc++ removed -S "C:\Program Files...." from all custom build steps for parsers (since the cygnus bison already knows where to get it from?) added custom build step for php4dll parsedate.y in release mode (only present in debug mode yet) compile debug and release -------END------- I think I have put it all together here, maybe I forget something since I started all over (with a clean cvs etc) a couple of times but I think it's all here. The DEBUG version of php4 runs ok(after I put msvcrtd.dll from my development system on the server), but the RELEASE version gives a access violation error and I can't seem to find any information it the drwtsn32 logfile related to wich function crashes... I've got to find out how to get drwatson output functions names of releasebuild executables in the logfile (btw php4 crashes only when trying to access a webpage from the server (i.e. only calling phpinfo), when running from a commandprompt it's ok). warnings I get: zend-scanner.c(5343) : warning C4273: 'isatty' : inconsistent dll linkage. dllexport assumed. C:\projects\bindlib_w32\res_send.c(920) : warning C4715: 'res_send' : not all control paths return a value configuration-scanner.c(712) : warning C4102: 'find_rule' : unreferenced label configuration-scanner.c(1475) : warning C4273: 'isatty' : inconsistent dll linkage. dllexport assumed. ..\bindlib_w32\arpa/inet.h(74) : warning C4005: 'FD_SETSIZE' : macro redefinition D:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\winsock.h(46) : see previous definition of 'FD_SETSIZE' parsedate.y(151) : warning C4273: 'localtime' : inconsistent dll linkage. dllexport assumed. C:\projects\php4\ext\pcre\pcrelib\pcre.c(127) : warning C4273: 'pcre_malloc' : inconsistent dll linkage. dllexport assumed. C:\projects\php4\ext\pcre\pcrelib\pcre.c(128) : warning C4273: 'pcre_free' : inconsistent dll linkage. dllexport assumed. --------------------Configuration: php4dll - Win32 Release-------------------- Linking... Creating library Release/php4nts.lib and object Release/php4nts.exp LINK : warning LNK4049: locally defined symbol "_pcre_free" imported LINK : warning LNK4049: locally defined symbol "_pcre_malloc" imported --------------------Configuration: mysql - Win32 Release-------------------- That's it for now. Best regards, Jeroen Janssen

« previous php.version4 (#5052) next »