ClamAV Antivirus Native Win32 Port - 0.96.1
Unofficial native port of the well known ClamAV Antivirus, this port is used in ClamWin Antivirus
Sources can be found at the ClamWin GIT repository:
git clone git://clamwin.git.sourceforge.net/gitroot/clamwin/clamav-win32.git
Build instructions:
- Visual Studio 2005 Professional: open contrib/msvc/clamav.sln project and build
- Visual Studio 2005 Express (untested by me): same of Professional but you need to install and setup platform SDK
- Visual Studio 2008 Express/Professional (untested by me): open contrib/msvc/clamav.sln and say yes to convert the solution
- MinGW: change directory to contrib/mingw, then run make
Notes for MinGW build:
- MinGW gcc version greater than 4.2 have broken alloca(), my code uses it for path normalization, executables built with such gcc versions will hang forever at startup.
- MinGW gcc 4.2.4 has a bug that prevents llvm to being built.
- You may want to try the MinGW Environment I use to build MPlayer, it includes last gcc 4.2 branch snapshot with the patch to compile llvm applied
- MinGW Build Environment with gcc 4.2.5 Unpack in c:\ or edit MinGW/etc/fstab accordling.
[Features]
- [clamav] features: zlib bzip2 regex gmp mmap threaded
- [clamav] small footprint
- [clamav] nice icons ;)
- [clamav] support for unc paths, esotic/long file names
- [clamscan] memory scanner
- [libclamav] dynamic libclamav.dll library common for all executables
- [libclamav] support for 7zip archives
- [freshclam] native dns txt query on win98/ME / DnsAPI query on Win2k+
- [clamd/freshclam] also as Windows Services
- [clamav] Digital Signature based False Positive check for Windows system files
- [llvm] Standalone llvm dll, so the same binary can be used also on system where llvm is not supported (I suggest to remove the dll on Win9x/NT)
[Precompiled Binaries] - Changes
Current Stable 0.96.1 - crt version 8.0.50727.4053
- clamav-win32-0.96.1.7z VS 2005 32bit build, it needs msvcrt80.dll Side by Side assembly (see notes)
- clamav-amd64-0.96.1.7z Win64 build, it needs msvcrt80.dll 64bit Side by Side assembly (see notes)
- clamav-mingw-0.96.1.7z MinGW build, no external crt needed, use it on old systems (e.g. nt4) or if you don't want to use additional files
[Redist]
- Microsoft.VC80.8.0.50727.4053.CRT.x86.7z Archive for embedding x86
- Microsoft.VC80.8.0.50727.4053.CRT.amd64.7z Archive for embedding amd64
- vcredist_x86_8.0.50727.4053.exe Installer for x86
- vcredist_x64_8.0.50727.4053.exe Installer for amd64
[Related Links]
[Misc files]
- DNS checker A little tool to check if your dns is working (freeware)
- ClamAV-GUI.7z GPL (sources on clamwin svn repository, directory addons)
A simple GUI suitable for recovery bootable media
- new stable 0.96.1 from rev 924529e, it fixes db path without a valid dbpath configuration
- 0.96.1 is a bit buggy, I've uploaded clamav-release branch commit rev e8d1a77
- new build based on 0.96.1 tag
- new build again for stable (git 0fe71ae): hope it fixes also non-emulated version of getaddrinfo()
- new build for stable (git d348da5): fixed getaddrinfo() bug and error popup when not loading llvm dll
- clamav new stable release 0.96 (note the version on files is 0.96.0.1 but the version is 0.96)
- clamav new stable release 0.95.3 (git c982e54) - needs 8.0.50727.4053
- clamav new stable release 0.95.2 (svn r2720)
- Better fix fore ScanStream
- bugfix for 0.95.1, ScanStream in clamd (svn r2645)
- clamav new stable release 0.95.1 (svn r2688)
- clamav new stable release 0.94.2
- clamav new stable build (svn r2589), fixed windows services issues at logout, please relaunch --install, now it adds a description
- clamav new stable release 0.94.1 (svn r2488), bugfix
- clamav new stable release 0.94 (svn r2488), internal glue for winsock/crt/winapi error messages, nt services
- clamav new stable release 0.93.1 (svn r2304), clamdscan now works also on win98/nt4
- clamav new stable release 0.93 (svn r2229), no more need for pthreads dll
- clamav new stable release 0.92 (svn r1755), updated lzma sdk, now 7zip code handles also BCJ filter (used while compressing executables)
[NOTES]
- .7z files are 7-zip compressed files.
- Memory scan of System processes needs Debug Privileges, on Windows XP Home Debug Privileges are disabled by default, thus you can use this little program to enable them. After executing it you'll need to reboot.
- If you are confused about the choice of vs6 or vs2005 just pick the vs6 version that doesn't need extra libs, but vs2005 generates better code.
- To use binaries compiled with Visual Studio 2005, you need the msvcrt80 side by side assembly, the "simple way" is uncompress crt 7zip archives in the executables directory, the directory Microsoft.VC80.CRT must be placed as is, placing dlls directly in the same directory of the executable will not work. On windows 9x you should put the dll and the manifest in windows system directory without the Microsoft.VC80.CRT directory. For more info about this refer to the relative msdn-page. You can also install the redist installers provided.
