Heka 的编译
Heka是Mozilla开源的,基于Go语言实现的,插件式log收集和分析系统。
已经编译好的 release 版本可以在下面地址下载:
https://github.com/mozilla-services/heka/releases
如果我们想自行编译,以windows下为例,如下:
下载源码:
C:\>go get github.com/mozilla-services/heka
package github.com/mozilla-services/heka
imports github.com/mozilla-services/heka
imports github.com/mozilla-services/heka: no buildable Go source files in d:\mycodes\golang\src\github.com\mozilla-services\heka
编译时,需要
D:\mycodes\golang\src\github.com\mozilla-services\heka>build.bat
'cmake' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'mingw32-make' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
编译的需要:
Prerequisites (all systems):
- CMake 2.8.7 or greater http://www.cmake.org/cmake/resources/software.html
- Git http://git-scm.com/download
- Go 1.3 or greater http://code.google.com/p/go/downloads/list
- Mercurial http://mercurial.selenic.com/wiki/Download
- Protobuf 2.3 or greater (optional - only needed if message.proto is modified) http://code.google.com/p/protobuf/downloads/list
- Sphinx (optional - used to generate the documentation) http://sphinx-doc.org/
- An internet connection to fetch sub modules
Prerequisites (Unix):
- make
- gcc
- patch
- dpkg (optional)
- rpmbuild (optional)
- packagemaker (optional)
Prerequisites (Windows):
Git 和 Mercurial 的安装请参考:
http://www.cnblogs.com/ghj1976/p/4049786.html
CMake 的默认选项变更

MinGW
MinGW安装时,几个特殊的选项如下:


这些相关工具配置好后, 在下载的目录下执行 build.bat 就开始编译了。
如果没有任何依赖库需要下载,就类似下面的提示:
D:\mycodes\golang\src\github.com\mozilla-services\heka>build.bat
-- GeoIP.h was not found, GeoIP functionality will not be included in this build
.
-- sphinx-build was not found, the documentation will not be generated.
-- Configuring done
-- Generating done
-- Build files have been written to: D:/mycodes/golang/src/github.com/mozilla-se
rvices/heka/build
[ 5%] Built target gogoprotobuf
[ 10%] Built target gomock
[ 15%] Built target go-simplejson
[ 20%] Built target whisper-go
[ 25%] Built target go-notify
[ 30%] Built target toml
[ 35%] Built target raw
[ 39%] Built target amqp
[ 44%] Built target slices
[ 49%] Built target sets
[ 54%] Built target goamz
[ 59%] Built target g2s
[ 64%] Built target gospec
[ 69%] Built target xmlpath
[ 74%] Built target go-ircevent
[ 79%] Built target go-uuid
[ 79%] Built target GoPackages
[ 84%] Built target lua_sandbox
Install dll's for the mock generation and unit tests
[ 84%] Built target heka_source
[ 84%] Built target message_matcher_parser
[100%] Built target mocks
[100%] Built target hekad
[100%] Built target flood
[100%] Built target heka-cat
[100%] Built target inject
[100%] Built target logstreamer
[100%] Built target sbmgr
[100%] Built target sbmgrload
D:\mycodes\golang\src\github.com\mozilla-services\heka\build>
相关参考资料:
http://hekad.readthedocs.org/en/latest/installing.html
Heka 的编译的更多相关文章
- Heka 的编译 和 Heka 插件的编译
相关英文文档在: https://hekad.readthedocs.io/en/latest/installing.html 所有系统都必须的如下: Prerequisites (all syste ...
- Heka 最简单例子
技术人员学习都是从简单例子开始的, Heka的应用也是从简单开始的. 需求: 监控一个日志文件的内容, 在标准输出显示出来. 操作步骤: 使用下载好或者编译好的 heka 已经编译好的 rel ...
- Heka 编译安装后 运行报错 panic: runtime error: cgo argument has Go pointer to Go pointer
Heka 编译安装后 运行报错 panic: runtime error: cgo argument has Go pointer to Go pointer 解决办法: 1. Start heka ...
- Heka 的 CMake 编译配置分析
CMake 是一个跨平台的自动化建构系统,它使用一个名为 CMakeLists.txt 的文件来描述构建过程,可以产生标准的构建文件. CMakeLists.txt 的语法比较简单,由命令.注释和 ...
- Heka GeoIpDecoder 配置
Prepare: 安装geoip-api-c,确保/usr/include/GeoIP.h存在: 源码编译安装Heka (容易出现问题): 下载GeoLiteCity.dat数据库. 配置文件举例: ...
- TODO:macOS编译PHP7.1
TODO:macOS编译PHP7.1 本文主要介绍在macOS上编译PHP7.1,有兴趣的朋友可以去尝试一下. 1.下载PHP7.1源码,建议到PHP官网下载纯净到源码包php-7.1.0.tar.g ...
- Centos6.5下编译安装mysql 5.6
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- CENTOS 6.5 平台离线编译安装 PHP5.6.6
一.下载php源码包 http://cn2.php.net/get/php-5.6.6.tar.gz/from/this/mirror 二.编译 编译之前可能会缺少一些必要的依赖包,加载一个本地yum ...
- CENTOS 6.5 平台离线编译安装 Mysql5.6.22
一.下载源码包 http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.22.tar.gz 二.准备工作 卸载之前本机自带的MYSQL 安装 cmake,编 ...
随机推荐
- 剑指offer面试题1---赋值运算符函数
题目描述:如下类型CMyString的声明,请为该类型添加赋值运算符函数. class CMyString{public: CMyString(char* pData = NULL); C ...
- jquery事件三 -- load(), ready(), resize()以及bind()事件
例子1 ready() DOM加载完毕 load() 元素加载完毕 resize() 浏览器窗口的大小发生变化 <!DOCTYPE html> <html lang="en ...
- leetcode-821-Shortest Distance to a Character
题目描述: Given a string S and a character C, return an array of integers representing the shortest dist ...
- BZOJ1721 Ski Lift 缆车支柱
Description Farmer Ron in Colorado is building a ski resort for his cows (though budget constraints ...
- Linux新手随手笔记1.9-使用Apache搭建网站
搭建网站 网站服务:让用户能够通过浏览器访问到的服务器上的文档资源. 对比Windows 和Linux部署服务方法对比 Windows:IIS Linux :Apache ,nginx Ap ...
- expect分发脚本
[分发系统]yum -y install expect #!/usr/bin/expect set host "192.168.11.102" " spawn ssh r ...
- http、tcp及从请求到渲染的过程
http.tcp及从请求到渲染的过程 https://blog.csdn.net/pambassador/article/details/88539478 http请求的结构内容 https://ww ...
- HDU4622 (查询一段字符串的不同子串个数,后缀自动机)
http://acm.hdu.edu.cn/showproblem.php?pid=4622 题意:给出一个字符串和q次询问,每次询问[l,r]区间内不同子串的个数 分析: N<=2000. 我 ...
- Android Studio Gradle下载的包在哪里?
C:\Users\Administrator\.gradle\caches\modules-2\files-2.1
- mysql for mac 上的安装及用DataGrip连接
---恢复内容开始--- 1.首先下载MySQL的mac版本,地址百度就行了. 2.这个时候需要注意安装的时候,弹出来的一个类似窗口,上面有提示默认密码,但是我当时就忘记了这个默认密码,如果你记住了默 ...