For Programmers: Free Programming Magazines  


Home > Archive > PHP on Windows > April 2005 > Re: [PHP-WIN] Compiling Win32 extensions (VC++)









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Re: [PHP-WIN] Compiling Win32 extensions (VC++)
Frank M. Kromann

2005-04-08, 8:56 pm

Hi Jeff,

The default build of PHP on Win32 is thread safe but it's only required if
you are using PHP with a multithreaded server. I Use PHP5 in a non threaded
configuration (CGI and CLI) on win32. You can download binaries at
http://kromann.info/php.php, or compile them.

There is two ways to fix the compile problem:

1) Add TSRM_FETCH(); calls to the functions where the tsrm_ls function is
needed. This should be added as the first statement after variable
declarations.

2) Change the functions to include the magick TSRM_CC/TSRM_DC parameters.
This will cause the tsrm_ls symbol to be passed when the function is
called. This method might be time consuming depending on the number of
functions and function calls in the code.

- Frank

>
> Hello,
>
> I am trying to compile Doru Petrescu's Upload Progress Meter extension

on Win32. (See http://pdoru.from.ro/upload-progress-meter.) This is a
great extension, it works very well... on linux, for which it was
designed.
>
> I am using MS Visual Studio (Visual C++ 6.0) as my build environment,

set up as described in the tutorial at
http://www.devnewz.com/2002/0909.html. When trying to compile, I get the
message: "error C2065: 'tsrm_ls' : undeclared identifier." This is
somewhere in PHP's TSRM (Thread Safe Resource Manager) code. As I
understand it, all Windows PHP extensions must be "thread safe." If I
remove the "ZTS=1" from the preprocessor directives, the module will
compile nicely into a .dll file... but PHP won't load with it enabled. I
imagine this is because I removed the thread safe stuff in order to make
it compile.
>
> Anyone have any ideas on how to get the darn thing to compile in such a

manner that will make PHP accept it and load the module?
>
> Help greatly appreciated,
>
> Jeff
>
> --
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com