项目作者: hillu

项目描述 :
Go bindings for YARA
高级语言: Go
项目地址: git://github.com/hillu/go-yara.git
创建时间: 2015-01-25T01:01:11Z
项目社区:https://github.com/hillu/go-yara

开源协议:BSD 2-Clause "Simplified" License

下载


Logo

go-yara

PkgGoDev
buildtest
Go Report Card

Go bindings for YARA, staying as
close as sensible to the library’s C-API while taking inspiration from
the yara-python implementation.

Build/Installation

On Unix-like systems, libyara version 4.3, corresponding header files,
and pkg-config must be installed. Adding go-yara v4 to a project
with Go Modules enabled, simply add the proper dependency…

  1. import "github.com/hillu/go-yara/v4"

…and rebuild your package.

If libyara has been installed to a custom location, the
PKG_CONFIG_PATH environment variable can be used to point
pkg-config at the right yara.pc file.

For anything more complicated, refer to the “Build Tags” section
below. Instructions for cross-building go-yara for different
operating systems or architectures can be found in
README.cross-building.md.

To build go-yara on Windows, a GCC-based build environment is
required, preferably one that includes pkg-config. The 32-bit and
64-bit MinGW environments provided by the MSYS2
provide such an environment.

Build Tags

Static builds

The build tag yara_static can be used to tell the Go toolchain to
run pkg-config with the --static switch. This is not enough for a
static build; the appropriate linker flags (e.g. -extldflags "-static") still need to be passed to the go tool.

Building without pkg-config

The build tag yara_no_pkg_config can be used to tell the Go toolchain not
to use pkg-config‘s output. In this case, any compiler or linker
flags have to be set via the CGO_CFLAGS and CGO_LDFLAGS
environment variables, e.g.:

  1. export CGO_CFLAGS="-I${YARA_SRC}/libyara/include"
  2. export CGO_LDFLAGS="-L${YARA_SRC}/libyara/.libs -lyara"
  3. go install -tags yara_no_pkg_config github.com/hillu/go-yara

If libyara has been linked against other libraries (e.g.
libcrypto, libmagic) and a static build is performed, these
libraries also need to be added to CGO_LDFLAGS.

YARA 4.1.x vs. earlier versions

This version of go-yara can only be used with YARA 4.3 or later.

Version of go-yara compatible with YARA 4.1.x are available via the
v4.2.x branch or tagged v4.2.* releases.

Version of go-yara compatible with YARA 4.1.x are available via the
v4.1.x branch or tagged v4.1.* releases.

Version of go-yara compatible with YARA 4.0.x are available via the
v4.0.x branch or tagged v4.0.* releases.

Versions of go-yara compatible with YARA 3.11 are available via the
v3.x branch or tagged v3.* releases.

Versions of go-yara compatible with earlier 3.x versions of YARA are
available via the v1.x branch or tagged v1.* releases.

License

BSD 2-clause, see LICENSE file in the source distribution.

Author

Hilko Bengen <bengen@hilluzination.de>