Files
clamav/win32
2011-01-20 11:06:18 +02:00
..
2010-11-06 15:50:58 +02:00
2010-11-19 17:11:32 +01:00
2010-10-29 12:59:47 +03:00
2010-10-30 04:18:10 +02:00
2010-07-24 17:50:04 +02:00
2010-07-24 17:50:04 +02:00
2010-07-24 17:50:04 +02:00
2009-11-01 21:27:15 +01:00
2010-01-26 18:05:43 +01:00
2011-01-18 15:57:09 +01:00
2011-01-14 23:53:47 +01:00
2010-07-29 14:02:25 +02:00
2009-10-14 01:28:02 +02:00
2010-07-24 17:50:04 +02:00
2009-10-14 01:28:02 +02:00
2010-07-24 17:50:04 +02:00
2010-11-06 15:50:57 +02:00
2010-11-06 15:50:57 +02:00
2010-11-06 15:50:57 +02:00
2010-06-25 23:29:57 +02:00
2010-08-05 12:08:13 +02:00
2010-07-24 17:50:04 +02:00
2010-08-05 12:08:13 +02:00
2010-07-29 14:02:25 +02:00

ClamAV for Win32
----------------

0- Requirements

To build the source code you will need:
- Git for windows with a git "shell"
- Microsoft Visual Studio 2010: the express version builds the 32bit target
just fine but it requires a decent amount of fiddling in order to compile
the 64bit target; this configuration is therefore not supported.

To run the binaries at least Windows 2000 is required.

1- Getting the code

The win32 source code is merged in the ClamAV repository and is available
via git.
Clone the repository with: git clone git://git.clamav.net/git/clamav-devel
See http://www.clamav.net/download/sources for more info.


2- Code configuration

After downloading the source code, minimal configuration is required:
just run the win32/configure.bat script *from within the git shell*.
Skip this step if you are building from an official release tarball.


3- Compilation

Open win32/ClamAV.sln in Visual Studio and build all.
The output directory for the binaries is either /win32/(Win32|x64)/Debug or
/win32/(Win32|x64)/Release depending on the configuration you pick.

Note: at the time of writing Batch Build is broken in VS10:
https://connect.microsoft.com/VisualStudio/feedback/details/556158
Use MSBuild instead


4- Special notes

The ClamAV tools in win32 are the same as in unix, so refer to their respective
manpage for general usage.
The major differences are listed below:
- Config files path search order:
  1- The content of the registry key "HKEY_LOCAL_MACHINE/Software/ClamAV/ConfDir"
  2- The directory where libclamav.dll is located
  3- "C:\ClamAV"

- Database files path search order:
  1- The content of the registry key "HKEY_LOCAL_MACHINE/Software/ClamAV/DataDir"
  2- The directory "database" inside the directory where libclamav.dll is located
  3- "C:\ClamAV\db"

- Globbing
Since the windows command prompt doesn't take care of wildcard expansion, minimal
emulation of unix glob() is performed internally. It supports "*" and "?" only.

- File paths
Please always use the backslash as the path separator.
SMB Network shares and UNC paths are supported.

- Debug builds
Malloc in debug (as opposed to release) mode fails after allocating some 90k
chunks; such builds won't be able to handle large databases.
Just do yourself a favour and always build in release mode.


5- Special thanks

Special thanks to Gianluigi Tiesi and Mark Pizzolato for their valuable help in
coding and testing.