6个版本 (1 个稳定版)
1.0.0 | 2023年11月14日 |
---|---|
0.0.5 | 2021年5月31日 |
0.0.3 | 2021年1月25日 |
0.0.2 | 2020年11月28日 |
#2 in #clam-av
每月 109 次下载
用于 3 个 crate(2 个直接使用)
17KB
305 行代码(不含注释)
clamav-sys
clamav-sys 是围绕 libclamav 的最小Rust接口。此包不应单独使用,而应通过其安全包装程序 clamav-rs 来使用。
构建
Unix(除了Windows以外的所有系统)
您应该安装您的发行版的 clamav-dev
包(包含头文件的ClamAV)。头文件和库将自动通过 pkg-config 获取。
Windows
vcpkg
处理依赖项的首选方式是 vcpkg
。将 $env:VCPKG_ROOT
指向您的 vcpkg
安装,并将 $env:VCPKGRS_DYNAMIC=1
设置为使用动态链接(默认链接方法可能不起作用,因为 pdcurses
不支持 x64-windows-static-md
三联组)。
有关更多信息,请参阅 vcpkg crate 的文档。
注意事项
- Windows有其自己的 zlib dll 版本,与 vcpkg 不兼容。如果您收到类似于“无法在动态链接库中找到程序入口点 gzdirect”的消息,请确保您的 PATH 变量中的 vcpkg 动态库在 Windows 之前。
此错误在 PowerShell 中特别难以诊断,因为进程会无输出地挂起。在 cmd.exe 中,您将得到上述对话框,其中包含有关错误的说明。$env:PATH="$env:VCPKG_ROOT\installed\x64-windows\bin\;$env:PATH"
手动
如果 vcpkg
在您的系统上不可用或找不到,则构建默认为手动指定依赖项。您需要定义以下环境变量
CLAMAV_SOURCE
:指向 ClamAV 源目录。CLAMAV_BUILD
:指向 ClamAV 构建目录。OPENSSL_INCLUDE
:指向包含openssl/ssl.h
的包含目录。
MacOS
使用 homebrew
安装开发依赖项
brew install clamav [email protected]
OpenSSL 没有包含在环境中,以避免与 Apple 的版本冲突,因此您需要告诉构建脚本其所在位置。
export OPENSSL_ROOT_DIR=/usr/local/Cellar/[email protected]/1.1.1i/
版本管理
libclamav-sys
的版本号跟踪 ClamAV 的版本号。也就是说,您至少需要 ClamAV 1.0.0 才能构建 libclamav-sys
1.0.0。由于 ClamAV 通常不进行破坏性的 API 变更,您将能够使用 libclamav-sys
与更新的 ClamAV 版本。
没有尝试保留向下兼容性(使用版本号大于 ClamAV 的 libclamav-sys
)。
没有运行时依赖
~0–1.9MB
~37K SLoC