win32 questions

php.internals

Vlad Krupin

23 years ago
Hi, internals, I need some help with my attempt to provide win32 port for the spellchecker (pspell extension). Since I am pretty ignorant as far as win32 goes, can some kind win32 guru answer this?: 1. The spellchecker has dictionaries that are located somewhere on the system and there is a registry key pointing to that place. PHP needs to know where they are. We can a) read it from the registry every time we open a new dictionary b) create an ini option for that (I know that nobody likes making php.ini even larger) c) force the developer provide a path (extra hassle, and the scripts won't be very portable between windows and other OSes, so I'd rather not do it) What is the best way to do it? 2. What needs to be done to make sure the new dll gets built and distributed along with other extensions with the next releae of PHP? I assume that whoever does those win32 builds needs to know how to install the spellchecker, where to get the library, etc. Thanks, Vlad

Vlad Krupin

23 years ago
Ok, looks like all win32 experts are on vacation, or have no opinion. I've implemented win32 build to the best of my knowledge, and it works. I committed it, along with the .dsp file. But I still want to figure out how to make sure that php_pspell.dll gets built and included into next PHP release. Somebody who does windows builds, please, could you tell me what I need to do to get pspell into win32 snapshots builds? I imagine, we need: 1) install pspell includes and libraries on a build machine, so we can link to them 2) add pspell to the build 3) add ';extension=php_pspell.dll' to php.ini-* files Thanks in advance, Vlad Vlad Krupin wrote:

Ilia A.

23 years ago
Vald, If you want it to be part of the 4.3.3 release, you need to backport your changed to PHP_4_3 branch. Ilia On August 13, 2003 03:19 pm, Vlad Krupin wrote:

Vlad Krupin

23 years ago
I wasn't really intending for it to be there since it is in RC stage, and this is technically "new functionality". I thought it is "too late", but, if not, I'll do that. There are only a few lines of code to backport. My big question is how to get the code to be in win32 snapshots and ultimately in a release though. Vlad Ilia Alshanetsky wrote:

Ilia A.

23 years ago
As far as I can tell your patch would not have any affect on existing *nix based code. So, the only possibility is either a working pspell extension for windows or a broken one. The latter would not be an issue since we didn't have such an extension before anyway. I'll talk to Edin who is our win32 build master about the possibility of building pspell on win32, if it is practical then we can MFH the fix. Ilia On August 13, 2003 03:34 pm, Vlad Krupin wrote:

Edin Kadribasic

23 years ago
Hi Vlad, 1. Where can I get includes and libs for MSVC++? 2. Snap builder compiles everything it can automatically :) 3. We'll do that once we get the extension building on the snaps box. Edin ----- Original Message ----- From: "Vlad Krupin" <vlad@php.net> To: <internals@lists.php.net> Sent: Wednesday, August 13, 2003 9:19 PM Subject: [PHP-DEV] win32 questions - try 2

Vlad Krupin

23 years ago
Edin Kadribasic wrote:
> Hi Vlad, > > 1. Where can I get includes and libs for MSVC++?
http://aspell.net/win32/files/aspell-dev-0-50-3-3.zip It has both the headers and the library. Just uncompress it into the same directory where 'php-src' is located, and then rename the directory to 'aspell' (I followed example of libxml here - same structure). This should compile and link fine, but some symbols will be unresolved. Those can be found in 'aspell-15.dll' which comes in the full installer - http://aspell.net/win32/files/Aspell-0-50-3-3-Setup.exe We might want to install that so the tests can run properly. Installer adds a registry key that is needed by the spellchecker, and gives you aspell-15.dll, which needs to go into some directory where php will be able to find it, just like iconv.dll for example. That's pretty much it. Currently, there are a couple more small tweaks that are needed for aspell to work properly, especially when built in Release mode. Nothing major, just annoyances and should be trivial to fix in aspell's code (aspell is confused about windows newlines in a couple of its own config files - their win32 port is still far from perfect). Aspell's author knows about them, and will hopefully fix them soon. Meanwhile, I'll document them so people won't be too surprised - for some reason that bug doesn't show in Debug mode, but does show in Release. Very high WTF.
> 2. Snap builder compiles everything it can automatically :)
Wonderful. I created two targets - Debug_TS and Release_TS. Hopefully, that's enough. Thanks! Vlad

Scott MacVicar

23 years ago
Hi Vlad, I got php_pspell.dll compiled without any problems. If anyone was getting compile errors because pspell.h couldn't be found you have to remember to set the path to aspell. Tools > Options Click Directory tab for Include files put the path to aspell/include/pspell for library aspell/lib once down you can compile without problem. I hope this makes it into the 4.3.3 release since its a great improvement for those running Windows. Regards, Scott MacVicar "Vlad Krupin" <vlad@php.net> wrote in message news:3F3AE02F.10201@php.net...