Here’s a nice easy solution to a schoolboy error I hit this morning…
I decided to upgrade my copy of PhpED up to the latest edition – 7.0, build 7027. I was previously on build 7023, so there weren’t that many changes – but being a perfectionist, I wanted the latest version.
One of the changes was that there is a point upgrade to the Debugger in PhpED. So, I installed the latest version, and received the following error message;
I searched the NuSphere PhpED website for any clues to this – but there wasn’t anything on that site. A general Google search didn’t raise anything either. Eventually a lonely neuron at the back of my brain forced its way to the front and gave me the solution.
I had forgotten to restart the Apache service on the server! A quick service apache2 restart command, and I was (almost) back in business.
Only almost. When I retested my debugger settings in PhpEd, I got a different error;
The clue is on the second line down in the image; it mentioned the x86_64 directory. I had accidentally copied the dbg-php-5.3.so file from the x86 folder instead of the x86_64 folder. My Ubuntu server runs a 64-bit operating system.
Copying the correct dbg-php-5.3.so file into the /usr/lib/php5/20090626 folder, and then restarting the server, gave me a good completion on the debug tests, and I’m now able to debug my PHP files again.
Upgrading the debugger
This is a correct list of instructions on how to update the PHP debugger. It’s mainly for my reference, and is specific to an Ubuntu server – but if it helps you, please let me know.
1. Locate the file dbg-4.6.2-Linux.tar.gz in the folder c:\Program Files (x86)\NuSphere\PhpED\debugger\server
2. FTP that file to your server folder /usr/lib/php5/20090626
3. Extract the tarball using the following command
$ tar -zxvf dbg-4.6.2-Linux.tar.gz
This will create a folder called dbg-4.6.2-Linux. Run the following commands to extract the correct PHP extension;
$ cd dbg-4.6.2-Linux/x86_64 $ cp dbg-php-5.3.so ../../dbg-php-5.3.so $ service apache2 restart
This makes a lot of assumptions, of course! But it should be a good enough guide for most developers to work from.