Every so often I find some time to update my SVG Support page with results from a more recent nightly build of Firefox. Tonight I tried to do the same thing for WebKit nightlies and ran into difficulties in Windows.

I downloaded the latest (r29336) to see what's what. When you download and unzip a nightly, you have to have Safari 3 Beta installed. Then you are supposed to be able to double-click the "run-nightly-webkit.cmd" invocation script from the nightly zip and away we go. When I double-clicked the script, a whole bunch of files were copied (I did not know where to though) and then I got an error dialog:

The procedure entry point ucol_open_3_6 could not be located in the dynamic link library icuin36.dll

The DLL in question is in the Safari 3 Beta directory so I can only assume that the WebKit is expecting a newer version of icuin36.dll that I don't have. I even uninstalled Safari 3 and re-installed just in case I had something stale in there. No luck. Where can I get the latest icuin36.dll? Dunno...

Then I tried some earlier builds. Build r29177 (2008-01-09) had the exact same problem. Build r28899 (2007-12-20) did run and then immediately crashed.

Looking at the script, I noticed that it copies a bunch of files from Safari 3 Beta and the nightly directories into a temporary location in Windows and then sets up a PATH environment variable and invokes it. I see nothing wrong with what they're doing there. It then detects if Visual C++ 8 is installed and if so, attempts to set up the same environment variables (presumably this is so you can debug crashes in VC8). Attempting to figure out what's the problem with invoking the nightly build, I removed this check (as if I didn't have VC8 installed) and it did run this time (without a crash). I put that check back into the invocation script and tried again and this time no crash. Hm, that first crash must have been a one-time thing. Ok, so at least I can test out WebKit as of 2 weeks ago...

Anyway, what's the policy on nightly builds for WebKit in Windows? Is anybody smoke-testing them? I've had much better luck with Firefox nightlies and I was hoping for a similar experience here. Anyone else seeing the DLL problem? Anyone know how to fix it?

§417 · January 9, 2008 · Safari, Software, SVG, Technology, Web · · [Print]

Leave a Comment to “Webkit Nightly Builds for Windows – Working?”

  1. You can hang out on the #webkit freenode channel for update. I have seen this icu problem mentioned for about 3 days, but I didn’t pay enough attention to see if it has been resolved yet.

  2. Got the same ucol_open thing too, and then there’s the small problem of having an svg plugin installed. Disabling plugins in the UI makes svg stop working at all in Safari. It seems uninstalling/removing the Adobe SVG Plugin and enabling plugins again is the only way to get Safari to use the native svg engine. Also the FindSafari.exe didn’t manage to find the path of the Safari install at first, so I had to reinstall it. The correct registry-keys were there before too, so I don’t know what went wrong (something in the updates perhaps?).

  3. Mark Rowe says:

    If you encounter problems with nightly builds, you should file a bug report against WebKit. If you encounter a problem with Safari, you should file a bug report against Safari.

  4. Mark Rowe says:

    To answer some of the queries asked at the end of the blog post: the number of people that download and test the Windows nightly builds is much lower than those on the Mac. WebKit developers, both at Apple and in the open source community, don’t typically use these builds as they compile WebKit themselves. In this instance the failure to launch with the nightly build is something specific to the way that the nightly builds are prepared, and does not happen when building from source yourself. That is why it was not noticed by any of the WebKit developers until being mentioned by users. We’re working on fixing the nightly builds at present, and will hopefully have this resolved later this evening.

  5. Mark Rowe says:

    The crash should be fixed with the r29350 nightly build.

  6. Mark Rowe says:

    Jeff,

    Yes, there are some “experimental” SVG feature that are not enabled in default builds as they’re known to be either incomplete or have stability problems. You can build WebKit yourself to experiment with them. I believe you enable them by passing the –-svg-experimental flag to build-webkit.

  7. Mark,

    Thanks a lot for both answering my general questions and fixing the bug. I look forward to testing sometime this week when I have an hour to spare again.

    By the way, I heard rumours that there are more SVG features available in WebKit then are enabled (declarative animation? filters?). Is it the case where I’d have to compile WebKit myself with some specific build flags enabled or something? Thanks!

    Jeff

  8. Oliver says:

    Jeff, there are a few “experimental” features that are present but disabled by defaults:

    * filters — lighting, composition, displacement mapping, and a couple of the others are implemented but have significant bugs in leopard (due to bitrot) and the filter stack is not as efficient as is really needed.

    * SVG animation is also available as an experimental feature but it has known but difficult to reproduce crashers.

    The nightlies have SVG as image (both img and css images), instancing, and svg fonts — none of which are enabled in release safari 3.

    There’s a good chance these work in WebKit/gtk and qt as well 😀

  9. Bruce says:

    Jeff

    I usually keep an eye on the nightly Windows builds of WebKit. I think they are doing some great work but the Windows builds do not seem to be a priority. If something causes crashes I send a report. For my work they are progressing nicely except for a big bug in sizing tags. They are aware of it though.

    http://bugs.webkit.org/show_bug.cgi?id=13502

    Bruce

  10. Baki says:

    How do we install the Safari Web Inspector on Windows Safari v3. I know how to do it on MAC. Hope to hear from you guys.

    Many Thanks