Using this makefile, and this patch, I successfully compiled Samba under Windows.
Here are the steps to run Samba 3.0.23c under Windows XP Pro SP2. This should also work (but I haven't tested) for any version of Windows, including Windows XP Home, 2000, or 2003:
Samba 3.0.23 on Windows Ross Smith 11/07/2006 Please note in order to get Samba to compile under Cygwin, I had to remove a build check that reports: ERROR: No locking available. Running Samba would be unsafe So please do not assume Samba will actually work under Windows. Assume it won't. Instructions to remove Samba are at the end of this file. To install Samba 3.0.23 in Windows, perform the following steps: 1. Download samba-3.0.23c-ross.zip: wget http://smithii.com/files/samba-3.0.23c-ross.zip 2. Unzip to "C:\Progra~1". For example: unzip -o -d "C:\Progra~1" samba-3.0.23c-ross.zip 3. Add the following to your system path: C:\Progra~1\samba\bin;C:\Progra~1\samba\sbin 4. Open a Command Prompt window: Start / Run / CMD [Enter] 5. Change to the samba directory: cd /d C:\Progra~1\samba 6. If Cygwin is installed, skip to step 7. Otherwise, run: smbsetup.cmd Go to step 9. 7. If c:\cygwin\bin is in your path, you will need to delete the Cygwin dll files in C:\Progra~1\samba\bin, by typing: del bin\cyg*.dll 8 Run cygsetup.cmd: cygsetup.cmd 9. Reboot computer: shutdown -r -t 0 -c "Let's samba!" After rebooting... 10. Open a Command Prompt window: Start / Run / CMD [Enter] 11. Run daemons: cd /d C:\Progra~1\samba start_daemons.cmd 12. Test Samba locally: smbclient -L localhost -U guest%password You should see: Domain=[hostname] OS=[Unix] Server=[Samba 3.0.23] Sharename Type Comment --------- ---- ------- tmp Disk /cygdrive/c/windows/temp IPC$ IPC IPC Service (Samba Server) Guest Disk Home Directories Domain=[hostname] OS=[Unix] Server=[Samba 3.0.23] Server Comment --------- ------- Workgroup Master --------- ------- 13. Test Samba from another Windows computer: net use * \\1.2.3.4\tmp /user:guest password Substitute your hostname or ip address for 1.2.3.4. You should see: Drive Z: is now connected to \\1.2.3.4\tmp. 14. Change the default passwords: smbpasswd guest smbpasswd administrator 15. If you add or remove users, you should run the mkpasswds.cmd command: cd /d C:\Progra~1\samba mkpasswds.cmd To remove Samba, do the following: 1. Kill the smbd and nmbd processes (by rebooting if you want) 2. Remove the following from your system PATH: C:\Progra~1\samba\bin;C:\Progra~1\samba\sbin 3. Open a Command Prompt window: Start / Run / CMD [Enter] 4. Change to the samba directory: cd /d C:\Progra~1\samba 5. Run the following: netstart.cmd regedit /s enablenetbios.reg cd .. rmdir /s /q samba shutdown -r -t 0 -c "No more samba :("