17/11/2000 I have removed the tarball of squid 2.4dev3 from this site. Use squid 2.4 snapshots from http://www.squid-cache.org. The instructions on this page are still valid however.
22/10/2000 Breaking news: The cygwin patches are now part of squid 2.4 HEAD cvs version. This means you will be able to build squid 2.4 out of the box on cygwin 1.1.4 and above without any blocking issues.
I will be summarising the info on page and moving it to the squid documentation at some point.
This port of Squid 2.4 to Cygwin is based on Squid 2.4Dev3. You can download the latest and greatest changes via anonymous CVS, see http://squid.sourceforge.net for more information. I am providing a tarball snapshot of the source, as the CVS branch may not always run stably (it is a development branch!)
To use this you must have cygwin 1.1.3 or greater, with bind installed and a valid /etc/resolv.conf file. Bind is used for it's name resolver. The windows native name resolver may work, but I have not tested squid without bind present. I suggest you use your local DNS server or your ISP's. If you are on a dial-up link, squid will not start unless you are connected or you disable the DNS resolver tests. Cygwin 1.1.3 is required for bugfixes in functions squid depends on. Without Cygwin 1.1.3 you will be unable to: launch squid from explorer or a shortcut or run in Daemon mode.
You should be able to run squid with this on any Windows 32-bit platform, including windows 95, 98, NT 4 and windows 2000. If you have any problems with a given platform, be sure to let me know via the mailing list.
You will need perl, and may need autoconf & autoheader to successfully configure and make squid on your system.
There are links from the Cygwin site to ports of both Bind and perl. I got a rpm's of autoconf and autoheader from Rebums' excellent Cygwin RPM collection - http://cygwin.cjb.net. If you download the CVS code you will need CVS, sharutils, and gettext. CVS was on Rebums site, and sharutils and gettext ran out of the box from the gnu source.
You will need /etc/group and /etc/passwd and /etc/resolv.conf present on your system.
The instructions below are for the CVS source.
The instructions below are for the tarball :
CVS code status:
This is the status of the version obtainable via CVS.
| Module | Caveats | Plans |
|---|---|---|
| All | Stackdumps occur when running in daemon mode, AND squid exits w/error
very quickly.
Looks like a memory overwrite issue in cygwin.
Not seen in normal operation |
Unable to reproduce. |
| Client_Persistent_connections | Occasionally squid paused, and the client doesn't see any data until a signal is sent. Observed with ie5 and 5.5, with and w/out http1.1 thru proxy turned on. Use client_persistent_connections off. | Workaround committed to CVS. Looking into the root cause in cygwin so the workaround can be removed. |
| Plain install | Works with no errors. No known problems other than the ALL issue above. | |
| AIO | this needs pthread_cond_t which is not present in cygwin (yet). | investigate coding around this/implement for cygwin. Some reports for other thread dependent applications on cygwin mention success with GNU portable threads. YMMV |
| Delay pools, CARP, SNMP, HTCP, cache-digests | no know problems | |
| lru, heap | no known problems | |
| AUFS | See AIO. Other than that it should be fine. | |
| DISKD | CYGIPC package needed (see sources.redhat.com/cygwin - related sites). Some errors during compile. | In theory it should work, investigating |
| UFS | no known problems | |
| Pinger | Makefile doesn't have the .exe extension | Fixed in CVS |
| Pinger | ICMP packets not being sent properly | Under investigation |
| use poll | untested, but cygwin has poll so it _should_ work | Working. |
Please provide any feedback either to me: (the email has been obfuscated to
fool spam email-grabbing web crawlers).. replace at with @ and dot with . < robert.collins at itdomain dot com
dot au> or via the squid-users mailing list (you can subscribe from http://www.squid-cache.org/mailing-lists.html)
Your best bet is the mailing list. The list is there to help with general squid
issues, and any cygwin-specific ones, I will pick up from there, usually on the
same day.