<?xml version="1.0" ?>
<kc>

<title>Wine Traffic</title>

<author contact="http://www.theshell.com/~vinn">Brian Vincent</author>
<issue num="251" date="03 Dec 2004 00:00:00 -0800" />
<intro> <p>This is the 251st issue of the Wine Weekly News publication.
Its main goal is to configure a new laptop. It also serves to inform you of what's going on around Wine. Wine is an open source implementation of the Windows API on top of X and Unix.  Think of it as a Windows compatibility layer.  Wine does not require Microsoft Windows, as it is a completely alternative implementation consisting of 100% Microsoft-free code, but it can optionally use native system DLLs if they are available.   You can find more info at <a href="http://www.winehq.org">www.winehq.org</a></p> </intro>
<stats posts="207" size="931" contrib="64" multiples="37" lastweek="29">

<person posts="27" size="87" who="Mike Hearn" />
<person posts="18" size="128" who="James Hawkins" />
<person posts="14" size="139" who="Robert van Herk" />
<person posts="10" size="44" who="Robert Shearman" />
<person posts="10" size="29" who="Dmitry Timoshkov" />
<person posts="8" size="43" who="Mike McCormack" />
<person posts="8" size="41" who="Steven Edwards" />
<person posts="6" size="18" who="Shachar Shemesh" />
<person posts="6" size="13" who="Ivan Leo Puoti" />
<person posts="4" size="14" who="Tony Lambregts" />
<person posts="4" size="11" who="Jakob Eriksson" />
<person posts="4" size="10" who="Alexandre Julliard" />
<person posts="4" size="9" who="Dimitrie O. Paun" />
<person posts="3" size="13" who="=?ISO-8859-1?Q?R=E9mi_Assailly?=" />
<person posts="3" size="13" who="Brian Vincent" />
<person posts="3" size="10" who="Krzysztof Foltman" />
<person posts="3" size="9" who="Grant Williamson" />
<person posts="3" size="9" who="Bill Medland" />
<person posts="3" size="6" who="Kenneth Porter" />
<person posts="3" size="6" who="Hajime Segawa" />
<person posts="5" size="41" who="Stefan D\&#246;singer" />
<person posts="3" size="5" who="Lionel Ulmer" />
<person posts="2" size="57" who="Aneurin Price" />
<person posts="2" size="19" who="Sam Lauber" />
<person posts="2" size="8" who="Eric Pouech" />
<person posts="2" size="6" who="Vincent B&#233;ron" />
<person posts="2" size="6" who="Ira Krakow" />
<person posts="2" size="5" who="Jeremy Newman" />
<person posts="2" size="5" who="Scott Ritchie" />
<person posts="2" size="5" who="Marcus Meissner" />
<person posts="2" size="5" who="Rolf Kalbermatter" />
<person posts="2" size="5" who="Dan Kegel" />
<person posts="2" size="5" who="Juan Lang" />
<person posts="2" size="5" who="Ferenc Wagner" />
<person posts="2" size="4" who="Christian Britz" />
<person posts="2" size="4" who="Andreas Mohr" />
<person posts="2" size="3" who="Jose Alberto Reguero" />
<person posts="1" size="4" who="Sanjay Connare" />
<person posts="1" size="4" who="Michael G\&#252;nnewig" />
<person posts="1" size="3" who="(Warren_Baird/CSI)" />
<person posts="1" size="3" who="Gerald Pfeifer" />
<person posts="1" size="3" who="Paul Millar" />
<person posts="1" size="3" who="Mark Knecht" />
<person posts="1" size="3" who="Joel Konkle-Parker" />
<person posts="1" size="3" who="Huw D M Davies" />
<person posts="1" size="3" who="Walt Ogburn" />
<person posts="1" size="3" who="=?ISO-8859-1?Q?Joaqu=EDn_Fern=E1ndez?=" />
<person posts="1" size="3" who="Alban Browaeys" />
<person posts="1" size="2" who="Peter Hartshorn" />
<person posts="1" size="2" who="Francois Gouget" />
<person posts="1" size="2" who="Jon Griffiths" />
<person posts="1" size="2" who="Duane Clark" />
<person posts="1" size="2" who="Michael Jung" />
<person posts="1" size="2" who="Thomas Hansen" />
<person posts="1" size="2" who="Diego 'Flameeyes' Petteno" />
<person posts="1" size="2" who="Adam Babcock" />
<person posts="1" size="2" who="Stefan Munz" />
<person posts="1" size="2" who="Bernard Gallet" />
<person posts="1" size="2" who="(pvriens)" />
<person posts="1" size="1" who="Ge van Geldorp" />
<person posts="1" size="1" who="Lauri Tulmin" />

</stats>
<section
        title="News: Wine-20041201"
        subject="News"
        archive="http://www.winehq.com/?announce=1.94"
        posts="1"
        startdate="27 Nov 2004 00:00:00 -0800"
	enddate="03 Dec 2004 00:00:00 -0800"
>
<topic>News</topic>
<mention>Mike Hearn</mention>
<mention>Jason Edmeades</mention>
<mention></mention>
<mention>Rob Shearman</mention>
<mention>News</mention>
<mention>cvs</mention>

<p>It's been a few weeks since we've seen Alexandre tag a
new version of Wine in CVS, so it wasn't too surprising
to see one this week:</p>
<quote who="Alexandre Julliard"><p>
WHAT'S NEW with Wine-20041201: (see 
 <a href="http://cvs.winehq.com/cvsweb/wine/ChangeLog?rev=1.89&amp;content-type=text/x-cvsweb-markup">ChangeLog</a> for details)
 <ul>
        <li> Implementation of the RSAENH dll.</li>
        <li> More work on the Direct3D 9 architecture.</li>
        <li> Builtin debugger improvements.</li>
        <li> Reorganisation of the Developer's Guide.</li>
        <li> Lots of bug fixes.</li></ul>
</p></quote>

<p>Alexandre noted the Direct3D changes, but we're also
seeing the beginning of some major work on other areas
of Wine.  The next release or two of Wine will likely
see massive changes to Direct3D, windowing, and OLE/COM.  
If you're interested in that stuff, look for patches from
Jason Edmeades, Alexandre, Mike Hearn, and Rob Shearman,
respectively.  
</p>

</section>

<section 
	title="Desktop Integration Tasks" 
	subject="Fun desktop integration tasks"
	archive="http://www.winehq.com/hypermail/wine-devel/2004/11/0696.html" 
	posts="10"
	startdate="27 Nov 2004 00:00:00 -0800"
	enddate="28 Nov 2004 00:00:00 -0800"
>
<topic>Integration</topic>
<mention></mention>
<mention>ReactOS</mention>

<p>Mike Hearn took a few minutes to come up with some tasks
that could really help users:</p>
<quote who="Mike Hearn"><p>

I'm sitting waiting for a couple of compiles to finish, so I thought I'd
put together a list of fun/interesting tasks people might like to have a
go at related to better integrating Wine with the native desktop.
</p><p>
None of these should be especially hard, and so would provide a good intro
to Wine development for anybody who has been lurking on the sidelines and
wants to get involved.
</p><p>
As usual no guarantees these patches would be accepted, that's Alexandre's
call. But they probably would be, and you'll learn something while doing
them! :)
</p><p>

Task 1:<ul>
Map CSIDL_PERSONAL (My Documents) to the $HOME directory if mapped. See
the _SHGetDefaultValue function in dlls/shell32/shellpath.c for an
explanation of how to do this. 
<br /><br />
I think it'd be ok to grab $HOME using the UNIX getenv() and then using
the libwine APIs to map them to a Win32 path. If the mapping fails (i.e.
$HOME is not accessible given the users dosdevices) then just fail with a
WARN().
</ul></p><p>

Task 2:<ul>
This is similar to above but with some extra work. Map the contents of
the ~/Desktop directory to the Windows virtual Desktop folder. In file
pickers and Explorer, the filesystem root is represented by a magic
Desktop folder. In real Windows this reflects the icons that are on the
desktop and is mapped to a real directory at some arbitrary point in the
filing system. On Linux we have no such virtual root, however it'd be nice
if icons that appeared in the KDE/GNOME desktop were put in their proper
place. That way users won't be confused by the file being on their desktop
but unavailable from their Windows applications file picker.
<br /><br />
This should not be too hard. The Desktop folder is implemented by a COM
object in dlls/shell32/shfldr_desktop.c. You just need to read the
$HOME/Desktop folder and put the items you find in there inside. Ignore
.desktop files for now, they are a bit tricker to map and aren't
especially useful for us anyway.
<br /><br />
You also want to map CSIDL_DESKTOP in dlls/shell32/shellpath.c,
_SHGetDefaultValue. See above.
<br /><br />
Bonus points for fixing the desktop icon while you're at it (an arrow??!)
</ul></p><p>

Task 3:<ul>
 The freedesktop.org icon theme specification shows us how to find icons
 for many different types of things. Implement support for loading and
 using the following icons from the icon theme (it should be OK to use
 native libraries for this like GdkPixbuf, just fall back to the compiled
 in defaults if it's missing):
<ul>
 <li> folder</li>
 <li> desktop</li>
 <li> computer</li>
 <li> unknown document</li> 
 <li> any others??</li></ul>

 Don't do file types, as native icon&lt;-&gt;file type association is done by
 mime types not extensions, and it'd make our file dialogs even slower than
 they already are.
<br /><br />
 You may be tempted to use e.g., libpng to implement this. Don't! Use
 GdkPixbuf instead, stock icons are allowed to be in many formats including
 SVG.
<br /><br />[<i>ed note: and later he added...</i>]
 Actually it's probably easier to use the new GTK+ APIs to implement this,
 that takes care of not only rendering the image to a raw bitmap you can
 then convert to an HICON, but it also implements the icon lookup algorithm
 for you. In future it'll probably also implement some fancy caching
 mechanism to reduce memory overhead. Might as well get these benefits
 easily!
</ul></p><p>

Task 4:<ul>
Try updating the menu mapping code to support the new XDG menu
specification. Don't bother trying to make this work everywhere, it's a
total nightmare. Just try supporting the new standards. Be warned: not
every desktop/distro supports this yet!
<br /><br />
This one might be quite hard.
</ul></p><p>

Task 5:<ul>
Try improving the winebrowser script to take into account the user's
preferred applications. At the moment it just tries every browser it
knows about in a hard coded order. Hint: in modern GNOME desktops you can
use the "gnome-open" program to make this automatic. There is a KDE
equivalent.
</ul></p><p>

Task 6:<ul>
Integrate Wine with XScreensaver, so installing Win32 screensavers makes
them automatically appear in the list. You may need to write patches for
xscreensaver to make this really slick.
</ul></p></quote>

<p>Diego Petten&#242; commented on task #5, 
<quote who="Diego Petteno">
In kde the command is '<tt>kfmclient openUrl &lt;url&gt;</tt>'.
</quote></p>

<p>Alban Browaeys had a suggestion for task #4:</p>
<quote who="Alban Browaeys"><p>
 wineshelllink supports update-menu which itself builds xdg compliant menus
 (via /etc/menu-methods/menu-xdg).
</p><p>
 I know mandrake and debian distro use "menu", need confirmation for
 RH/Novell newest releases.
</p><p>
 It would be more elegant to let menu manage gnome/kde/xgd/wmaker ... than
 reimplementing them in wineshelllink . The strongest point is that menu
 build menu via methods which are tweakable by distro builder. Thus it will
 avoid to upgrade wineshelllink whenever we want to support gnustep xdg
 version 12 and the like.</p></quote>

<p>Steven Edwards added another idea:</p>
<quote who="Steven Edwards"><p>
 I would like to add
support to use the draft FreeDesktop trashcan spec. I am working on
this a little with one of the ReactOS guys but it will be a while
before we have a patch ready.</p></quote>

<p>Stefan D&#246;singer suggested another:</p>
<quote who="Stefan Dosinger"><p>
Another suggestion, probably a bigger task: Look for common native
applications and write entries for them into the registry. For example, I
manually added an entry for KMail in \\Machine\\software\\clients and now I
can select Kmail as the default Mail application in the internet options
control panel(Which is created when Internet Explorer is installed). My
registry entries look like this:
<ul><code>
[Software\\Clients\\Mail\\Kmail] 1100110998<br />
@="KMail"
<br /><br />
[Software\\Clients\\Mail\\Kmail\\Protocols\\MailTo] 1100110998<br />
@="URL:MailTo Protocol"<br />
"EditFlags"=hex:02,00,00,00<br />
"URL Protocol"=""
<br /><br />
[Software\\Clients\\Mail\\Kmail\\Protocols\\MailTo\\DefaultIcon] 1100110998<br />
@="C:\\Program Files\\Opera\\opera.exe,1"
<br /><br />
[Software\\Clients\\Mail\\Kmail\\Protocols\\MailTo\\shell\\open\\command] 1100110998<br />
@="\"Z:\\usr\\kde\\3.3\\bin\\kmail\" \"%1\""
<br /><br />
With Z: mapped to /
</code>	</ul></p><p>
I selected KMail as the default Mail application, and when I open an Mail
Address in MSIE kmail pops up. The same happens when I enter a mailto: address
in Task Manager->New task.</p></quote>

<p>Then Mike came up:</p>
<quote who="Mike Hearn"><p>

 Implement a bridge between the Windows registry and the GNOME/KDE
 configuration systems. If you set the wallpaper in a Windows app
 it should reflect on your real desktop. This is useful for programs
 like the WebShots desktop.
</p><p>
 Actually I already have the code for such a "wineshell" program in a local
 tree, for the system tray integration. I'll see if I can get it submitted
 soon. We could put all this integration stuff there once it's integrated
 into Wine.
</p></quote>

<p>Ivan Leo Puoti added one more, 
<quote who="Ivan Leo Puoti">
Get xscreensaver to respect the registry LowPowerActive setting.
</quote></p>


</section>
<section
        title="Wine Bug Busters"
        subject="Bug Busters"
        archive="http://www.winehq.org/hypermail/wine-devel/2004/11/0777.html"
        posts="20"
        startdate="30 Nov 2004 00:00:00 -0800"
	enddate="01 Dec 2004 00:00:00 -0800"
>
<topic>Debugging</topic>
<mention></mention>
<mention>WineHQ</mention>

<p>James Hawkins wanted to get everyone's thoughts about getting
developers together to smash bugs in Wine:</p>
<quote who="James Hawkins"><p>
 I have a totally non-original idea for sessions called Bug Busters
 where, at a designated time, a group of wine developers would get
 together on #winehackers (or some other channel). We would pick a bug
 (or maybe more) from wine's bug tracker and work together to fix the
 bug(s).  This would serve several good purposes.  First, we would be
 giving more attention to wine's bugzilla and getting rid of a lot of
 those bugs.  Second, many newcomers can witness and take part in the
 wine development process.  I'm sure everyone can remember how daunting
 it is to jump into wine development.  Anyway, if anyone has any ideas
 or would like to take part in this, let me know and we'll get this
 started.
</p></quote><p>
There were more suggestions and James summarized them,
<quote who="James Hawkins">
 I agree that programs should be freely available to anyone if the bug
 requires a program.  Some of the bugs don't need them.  I also agree
 that the older bugs should be fixed first.  We might even find that a
 bunch of bugs we try to fix have already been fixed (it's good to
 clean up bugzilla too).  My thought is that we would pick the bugs
 before the sessions so that anyone interested can research the
 problems beforehand and we know what we're going to work on for the
 session.  Another option is that we pick the bugs to work on during 
 the session.  I think both options are convenient and worth
 considering.  It's ultimately up to the community though.
</quote></p>

<p>Tony Lambregts expanded on some of those ideas:</p>
<quote who="Tony Lambregts"><p>
 There is nothing wrong with fixing a bug for its own sake and any bug we fix
 will ultimately improve wine and provide some insights into debugging wine.
</p><p>
 That being said, I would agree that at least to some degree this should be a
 training exercise and that whatever bug(s) we go after, some (budding?) developer
 would like to have fixed. However there should be a bug report in bugzilla so
 that developers can research the bug in the first place and we can keep track of
 what was done for these sessions. I have created a key word "BugBuster" in
 Bugzilla to keep track of candidates. Hopefully after several sessions we will
 have a list of fixed bugs that new developers can use as a reference.
</p></quote>

<p>More details were discussed, such as what time it should be held
to attract developers in both the US and Europe.  During the course
of discussion, James confirmed that #winehackers on IRC would be used
to get everyone together (see WineHQ for details on 
<a href="http://www.winehq.org/site/forums#irc">Wine's IRC channels</a>.)
Finally, after more discussion, it was decided that the first Bug
Buster session would be held on Sunday, Dec 5th, at 7pm GMT (2pm EST).  
</p>
</section>
<section 
	title="RichEdit (con't)" 
	subject="No RichEdit20A window class"
	archive="http://www.winehq.org/hypermail/wine-devel/2004/11/0689.html" 
	posts="4"
	startdate="27 Nov 2004 00:00:00 -0800"
>
<topic>Controls</topic>
<mention></mention>

<p>Last week (<a href="http://www.winehq.com/?issue=250">WWN #250</a>) 
some discussion about the RichEdit control outlined the amount of work
that needed to be done to support the latest incarnation of it.  Mike
McCormack said there was just a lot to do and work hadn't even started.
This week Krzysztof Foltman wrote in to say he had done some work
on it:</p>
<quote who="Krzysztof Foltman"><p>
Just for the record, I'm still trying to develop a "proper" RichEdit 
control. I've written from scratch with RichEdit compatibility in mind, 
so I don't expect any copyright or suitability problems. At least, 
unless I screw something up or I'm less smart than I think.
</p><p>
If someone isn't afraid of running closed-source .exe from barely known 
developer (or can run it in a controlled environment), you can find the 
latest binary at:
<ul>
    <a href="http://foltman.com/riched.zip">http://foltman.com/riched.zip</a>
</ul></p><p>
I'm not releasing the source yet, because I don't think it's hackable, 
until at least its architecture is complete. What's more, I'm planning 
to license a heavily modified derived product comercially to some 
company (a rich text viewer/editor tailored for a specific application), 
so any copyright-related problems are undesirable.
</p><p>
What IS done:
<ul>
<li> basic text wrapping with support for proportional fonts and character 
formatting, no major known bugs (the only supported attribute is Bold, 
but the rest will be relatively easy to add)</li>
<li> simple editing (typing text, backspace, delete, no overwrite mode yet)</li>
<li> a very incomplete implementation of Shift-arrow selection (done in a 
few  hours yesterday :-) ), mouse operations don't support selection yet</li>
<li> per-paragraph alignment</li>
<li> pitiful low-level style management</li>
<li> bold attribute</li>
<li> some basic optimizations (avoiding rewrapping unmodified paragraphs 
unless editor window is resized)</li>
<li> uses UNICODE internally (not necessarily a good thing)</li>
</ul></p><p>
What isn't done:
<ul>
<li> RichEdit API (which is a mess; I'm taking care of it in order to 
ensure compatibility wrt how editing functions work, however, basic 
editing functionality is the number one priority, as it's more difficult 
to achieve)</li>
<li> RTF interface</li>
<li> Undo</li>
<li> Clipboard</li>
<li> tabs</li>
<li> bulleted lists</li>
<li> setting paragraph attributes (margins are implemented internally but 
can't be changed with current interface, setting alignment by Ctrl+L/E/R 
works)</li>
<li> all RichEdit f3 functionality</li>
<li> MBCS support (and it would be very hard to add)</li>
<li> BiDi and CTL support (ditto)</li>
<li> everything not mentioned in the first list</li>
</ul></p></quote>

<p>Mike encouraged Krzysztof to just make it available:</p>
<quote who="Mike McCormack"><p>
I have been working on richedit a little also, and am quite keen to get 
the ball rolling by having some richedit 2.0 code in winehq so that others 
can help work on it.  I'm quite interested to see the source for this.
</p><p>
Whether you show us or not, the copyright for the source still belongs 
to you.  If you choose to license it under LGPL, then you can still 
release it under a different license later, so long as you are the sole 
author.
</p><p>
I think you'll find that the development proceeds much quicker if you 
release your source, and get it integrated into the Wine tree sooner 
rather than later.  People will submit patches fixing your code, and new 
features.
</p><p>
When you do release your "completed" riched20 code, LGPL patches will 
still be submitted against it, and you'll experience the same licensing 
problems if you wish to incorporate other people's code.
</p><p>
Frankly speaking, people promising to release their source code "at a 
later date" are an impedement to development, because nobody is motivated 
to work on the promised feature in the meantime.
</p><p>
Please consider "release early, release often", so we can work together 
on this :)
</p></quote>

</section>
<section
        title="IE Installer Script (con't)"
        subject="Changed IE6 install script to run IE6 completely out-of-box"
        archive="http://www.winehq.org/hypermail/wine-devel/2004/11/0703.html"
        posts="7"
        startdate="27 Nov 2004 00:00:00 -0800"
        enddate="29 Nov 2004 00:00:00 -0800"
>
<topic>Fixes</topic>
<mention></mention>

<p>Last week (WWN <a href="http://www.winehq.org/?issue=250">#250</a>) 
I mentioned Hajime Segawa came up with a new installer script for
Internet Explorer.  I also mentioned that he "cheated" by making
it depend on native DCOM.  This week Segawa changed the script and
announced:</p>
<quote who="Hajime Segawa"><p>
I changed the install script a bit and it does not depend on DCOM98,
MFC4.0, etc... anymore. So, you can run IE6 completely out-of-the-box.
</p><p>
New script is here :
<ul><a href="http://sidenet.ddo.jp/winetips/files/wine-config-sidenet-1.5.3.tgz">
http://sidenet.ddo.jp/winetips/files/wine-config-sidenet-1.5.3.tgz</a></ul></p></quote>

<p>Mike Hearn had some suggestions for improving it further:</p>
<quote who="Mike Hearn"><p>
Quick tip: if you grab the IEBATCH file from my IE installer script:
<ul><a href="http://bylands.dur.ac.uk/~mh/wine-ie">
http://bylands.dur.ac.uk/~mh/wine-ie</a></ul></p><p>

and put it in your script then the IE installer won't prompt the user for
any information when installing. This is good as not all the things it
would otherwise install work yet. Also it makes it a fully automatic
hands-free install which I quite like.
</p></quote>

<p>Segawa rewrote his script to include it and announced some more changes,
<quote who="Hajime Segawa">
Internet Explorer setup can be downloaded during install.
Multi language support started.</quote></p>

<p>Mike Hearn, who wrote another IE installer script last year,
asked if he could redirect users to Segawa's page since his script
was unmaintained.  Segawa thought that was fine.   Christian Britz 
then offered to translate it into German.  The current version of
the script is 1.6.2 and can be found at:
<ul><a href="http://sidenet.ddo.jp/winetips/files/wine-config-sidenet-1.6.2.tgz">
http://sidenet.ddo.jp/winetips/files/wine-config-sidenet-1.6.2.tgz</a></ul></p>

</section>
 
<section
        title="Darwine SDK"
        subject="Preliminary Darwine SDK Released"
        archive="http://www.winehq.org/hypermail/wine-devel/2004/12/0088.html"
        posts="1"
        startdate="02 Dec 2004 00:00:00 -0800"
>
<topic>Winelib</topic>
<topic>Ports</topic>
<mention></mention>
<mention>Microsoft</mention>

<p>Wine and Winelib, although intricately bound together, really
serve two different audiences.  Whereas Wine is normally used to just
run existing Windows binaries, Winelib holds the promise of
being able to take the source code of a Windows application
and recompile it as a native application.  In theory, Microsoft
could use it to make Word run on Solaris.  
</p><p>
However, Winelib 
apps still require Wine in order to have little details, like
windowing, function.  In another thread recently, someone was
disappointed to learn this.  However, since there's no 
performance penalty incurred it's not a huge deal and more of
a cosmetic issue.  In fact, Dimi pointed out the Winelib toolchain
addresses it by creating a wrapper script.  
</p><p>Anyway, Sanjay Connare announced a Darwine SDK this week
for MacOS X:</p>
<quote who="Sanjay Connare"><p>
	I have released a preliminary version of the Darwine SDK version 0.1.  
Many people are interested in getting Darwine up and running so they 
can compile programs on OS X and this release should satisfy their 
curiosity.  The SDK features the following:
<ul><li>source code for the current Darwine binary 20040820</li>
<li>source code for WineHelper</li>
<li>Xcode Integration</li>
<li>Xcode Template</li>
<li>Updated Uninstaller</li></ul>
</p><p>
The Xcode integration allows for a user to compile windows source code 
from within the Xcode IDE using the wine tools.  Users may want to note 
that there are some changes to the way Darwine is installed and 
functions.  Due to limitations in Xcode, the wine source tools such as 
winegcc, winemaker, winebuild are installed in the /usr/bin directory 
and not the /Library/Darwine/bin directory.  This may be changed in a 
future release but was necessary so Xcode integration would work 
correctly.  As a result there is an updated uninstaller as well.  The 
uninstaller will remove everything except for the Xcode project 
template folder, which is moved to the trash and needs to be removed 
manually.

</p><p>
To start a new Darwine project, simply launch Xcode, select new 
project, and select Darwine (Windows) Application.  Currently in Xcode 
the "Build and Run" does not work, it will build the program but not 
launch.  However, the Build button works as expected.  When compiling a 
Darwine application for the first time Xcode may give the error:
<ul>
<code>ld: table of contents for archive: 
/Library/Darwine/lib/wine/lib&lt;name&gt;.a is out of date; rerun ranlib(1) 
(can't load from it)</code></ul></p><p>

Open a terminal and type the following command:
<ul><code>
sudo ranlib /Library/Darwine/lib/wine/lib&lt;name&gt;.a</code></ul></p><p>
&lt;name&gt; being replaced by the name of the library whose table of 
contents is out of date.

</p><p>
The source code should then compile fine.  There are many examples of 
source in the wine source code "programs" folder which is located in 
the root of the source directory.  Simple programs should compile fine. 
  However, bigger programs that depend on more of the windows headers 
will probably not compile due to header incompatabitlies between the 
wine and OS X headers.
</p><p>
You can download the preliminary release here 
<a href="http://prdownloads.sourceforge.net/darwine/Darwine_SDK0.1.dmg?download">
http://prdownloads.sourceforge.net/darwine/Darwine_SDK0.1.dmg?download</a>
or through the Darwine web site 
<a href="http://darwine.opendarwin.org">http://darwine.opendarwin.org</a>
</p><p>
Post any comments, questions or concerns to the Darwine Mailing List 
"darwine-devel_at_lists.sourceforge.net" .
</p><p>
Remember this is a preliminary release and there are many bugs and 
issues that need to be worked out and features that need to be 
implemented.  More information will be posted on the Darwine website in 
the near feature.
</p><p>
Last but not least enjoy.
</p></quote>

</section>
</kc>
