mirror of
https://github.com/Cisco-Talos/clamav.git
synced 2026-02-06 04:51:39 -05:00
74 lines
2.4 KiB
Plaintext
74 lines
2.4 KiB
Plaintext
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.
|
|
|