XAMPP 1.73 Thread Safety and XDEBUG - CONFUSED

Problems with the Windows version of XAMPP, questions, comments, and anything related.

XAMPP 1.73 Thread Safety and XDEBUG - CONFUSED

Postby berniev » 28. January 2010 03:21

XAMPP 1.73 Windows installs
Thread Safety: Enabled;
XDEBUG v2.06dev (not a mainstream release at xdebug.org)
PHP 5.3.1
It is compiled with MSVC6 (Visual C++ 6.0)

This setup results in unreliable debug with NetBeans6.8.

xdebug.org says for PHP5.3x you must use non-thread safe versions of XDEBUG and match compiler (VC6).
i.e. in php.ini: zend_extension = "E:\xampp\php\ext\php_xdebug.dll" and not zend_extension_ts ..
and xdebug must then be VC6 version.
Yet there's no VC6 in the latest version ( Xdebug 2.1.0beta1 Release date: 2010-01-03 )

I tried 2.1.0bata VC9 versions (ts and non-ts) but they simply don't show up when restarting apache.

Is xampp correct in building for thread-safe enabled with php 5.31?
Is xdebug dragging the chain in not having a VC6 version yet.

Is this as contradictory as it appears or I am missing something obvious (wouldn't be the first time!)?
berniev
 
Posts: 6
Joined: 20. January 2010 06:46
Location: Sydney Australia

Re: XAMPP 1.73 Thread Safety and XDEBUG - CONFUSED

Postby Wiedmann » 28. January 2010 07:08

xdebug.org says for PHP5.3x you must use non-thread safe versions of XDEBUG and match compiler (VC6).

No, xdebug.org says that:
a) you must have a thread safe version if your PHP is thread safe, and a non-thread safe versions if your PHP is non-thread safe.
b) you need a version which is compiled with the same compiler then PHP.

(well, these are requirements for each PHP extension, not only xdebug)

Yet there's no VC6 in the latest version ( Xdebug 2.1.0beta1 Release date: 2010-01-03 )

Then you can't install the latest version in XAMPP/PHP, because the PHP in XAMPP is build with VC6 (see point b) above)
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: XAMPP 1.73 Thread Safety and XDEBUG - CONFUSED

Postby berniev » 28. January 2010 13:23

No, xdebug.org says that:
a) you must have a thread safe version if your PHP is thread safe, and a non-thread safe versions if your PHP is non-thread safe.
b) you need a version which is compiled with the same compiler then PHP.

According to http://xdebug.org/docs/install
"php.ini:
zend_extension="/wherever/you/put/it/xdebug.so" (for non-threaded use of PHP, for example the CLI, CGI or Apache 1.3 module) or: zend_extension_ts="/wherever/you/put/it/xdebug.so" (for threaded usage of PHP, for example the Apache 2 work MPM or the the ISAPI module)
From PHP 5.3 onwards, you always need to use zend_extension and not zend_extension_ts."

Does this mean that for PHP>=5.3 XDEBUG insist on non-threaded PHP build, phpinfo:thread safety = disabled, which is the opposite of XAMPP?
Or have I got the thread safety bit back-to-front?

But then for 2.1.0beta15.3 they offer:
5.3 VC9 Non-thread-safe (64 bit),
5.3 VC9 Non-thread-safe (32 bit),
5.3 VC9 (64 bit), 5.3 VC9 (32 bit)"
Which appears to include both TS and non-TS. And only in VC9 which is no good to current XAMP. But maybe others will follow one day.

I feel pretty stupid but I hope you can see just how confusing this might be! I have yet to find a satisfactory document on this.
All I want to do is fix broken debug!
berniev
 
Posts: 6
Joined: 20. January 2010 06:46
Location: Sydney Australia

Re: XAMPP 1.73 Thread Safety and XDEBUG - CONFUSED

Postby Wiedmann » 28. January 2010 14:12

From PHP 5.3 onwards, you always need to use zend_extension and not zend_extension_ts."

This sentence only explains how you must enable the xdebug extension in "php.ini":
As of PHP >= 5.3, you always have to use "zend_extension". Regardless if your extension is tread safe or not.

(With PHP <= 5.2 you must use "zend_extension_ts" for a thread safe extension, and "zend_extension" for a non thread safe extension.)

But your extension must always be build in the same way like PHP (and for the same PHP version).
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: XAMPP 1.73 Thread Safety and XDEBUG - CONFUSED

Postby berniev » 28. January 2010 15:00

Thank you so much for your accurate and prompt responses.

At last I understand that the php.ini zend_extension line is always used without the "_ts" regardless of thread safety if PHP>=5.3 ! Hooray! I've not seen that explained anywhere else.

So to try a later xdebug extension with XAMPP we must select a VC6 thread-safe version.
Which at the moment is not available even though the VC9 version came out nearly a month ago
So for now we're stuck with 2.0.6-dev, kinda leaving XAMPP out in the cold for now.

Thanks again!
berniev
 
Posts: 6
Joined: 20. January 2010 06:46
Location: Sydney Australia

Re: XAMPP 1.73 Thread Safety and XDEBUG - CONFUSED

Postby fabrizio » 22. February 2010 22:10

Hi to all,
any news on a thread safe VC6 and x64 compiled xdebug that works with XAMPP? Can't seem to find any that matches my new windows 7 x64 box...
Thanks for replies

Fabrizio
fabrizio
 
Posts: 3
Joined: 22. February 2010 22:02


Return to XAMPP for Windows

Who is online

Users browsing this forum: No registered users and 59 guests