Squid'd default is to operate as an HTTP proxy; however, this FAQ https://docstore.mik.ua/squid/FAQ-4.html#ss4.10 says "No changes are necessary to use Squid with socks5. Simply add the usual -Dbind=SOCKSbind etc., to the compile line and -lsocks to the link line."

That sounds great and all except that I don't code c/c++ beyond knowing the basic syntax so typically when I compile something, it's ./configure and ./make. Occasionally I have to modify a makefile's compile line but I'm not sure about linking here (Though I get the concept of linking).

It's also a bit confusing to interpret exactly what to do by "add the usual X etc.," so if someone could point out the exact steps here it would be a great help since they don't seem to be detailed anywhere. It doesn't sound hard.

I already have squid compiled and running properly for HTTP connections but SOCKS support is a must.

1 Answer 1


Have a look at this page. It talks about squid socks support and how you can build it to support SOCKS connections. The status is "testing". So, you may need to think about using it for production.

When building squid, you need to define these variables:

export CFLAGS=" -Dbind=SOCKSbind "
export CXXFLAGS=" -Dbind=SOCKSbind "
export LDADD=" -lsocks "

to modify build and link options.

Also, you can pass these variables to configure script. If you have already built squid, you can find out the current values using squid -v. This will show you squid version along with configure and build options.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.