libPhenom库编译

原创 2015年11月19日 17:32:56

libPhenom是Facebook发布的一个C语言事件框架,用于构建高性能和高可扩展的系统。支持多线程、提供内存管理和常用数据结构、json处理。

以下是编译过程:

一、环境准备

所用的操作系统环境是CentOS 6.7。登陆之后首先安装需要的开发环境:

yum groupinstall "Development tools"

这一步会自动去安装automake、autoconf和libtool等工具。然后从Github上面检出libPhenom的源代码。

二、编译过程

git clone https://github.com/facebook/libphenom.git

然后cd到libphenom目录,截止当前最新pull到的代码是2015年11月16日的。可以看到当前的目录结构:


在指令行运行autogen.sh,会自动运行libtool、automake和autoconf等指令。


运行完之后,如果直接运行./configure,这个时候会提示:

No package 'ck' found
configure: error: ck is required

这个就需要安装ConcurrencyKit这个库。从Github上面查询到这个库的源代码。然后使用git来进行检出。

git clone https://github.com/concurrencykit/ck.git

然后./configure进行编译,运行make && make install进行安装,默认安装到了/usr/local目录下面。这个时候再次切换到libphenome目录下进行./configure。这个时候发现还是没有识别出来ck,在终端提示

Package ck was not found in the pkg-config search path.
Perhaps you should add the directory containing `ck.pc'
to the PKG_CONFIG_PATH environment variable

cd到/usr/local目录下,运行指令查找ck.pc这个文件。

find . -name *.pc


然后再次运行configure,同时带上PKG_CONFIG_PATH这个参数,如下所示:

./configure PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

这次顺利通过configure,但是直接make发现编译不通过,显示内容如下:


是ConcurrencyKit库的代码不匹配,在travis目录找到一个deps.sh文件,在里面看到所使用的ck库的版本是0.4.1。


使用git切换到0.4.1的tag,重新编译安装ck库,这次可以正常make编译libPhenom库了。



相关文章推荐

值得推荐的C/C++框架和库 (真的很强大)

值得学习的C语言开源项目 - 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作...

libPhenom:Facebook开源的高性能C语言并发编程框架

简介 libPhenom是Facebook发布的一个C语言事件框架,用于构建高性能和高可扩展的系统。支持多线程、提供内存管理和常用数据结构、json处理。 特性 带有计数器的内存管理...
  • xyblog
  • xyblog
  • 2016年10月08日 18:28
  • 830

libPhenom:Facebook开源的高性能C语言并发编程框架

libPhenom是Facebook发布的一个C语言事件框架,用于构建高性能和高可扩展的系统。支持多线程、提供内存管理和常用数据结构、json处理。...
  • liwg06
  • liwg06
  • 2017年03月01日 22:22
  • 216

libPhenom 编译

安装 http://c-ares.haxx.se/ 安装 http://concurrencykit.org/ \cp build/ck.pc  /usr/lib64/pkgconfig/ $ ...

libphenom 学习笔记

参考资料: libphenom文档 How-does-libphenom-work 引用计数源码: include/phenom/refcnt.htypedef int ph_refcnt_t; vo...

VS2013编译好的openssl1.1.0库

  • 2017年11月16日 11:30
  • 1.12MB
  • 下载

postgresql的c++接口libpqxx编译库

  • 2017年11月09日 09:50
  • 5.84MB
  • 下载

Libxml2库的编译和使用

Libxml2库提供了C语言解析和构造xml文档的接口,为后台C语言处理程序和前台应用程序提供了一种通用的通迅方式。 本文以libxml2-2.6.30版本来说明Libxml2库的使用方法。 1.  ...

webrtc中base库在window平台编译

  • 2017年11月14日 19:45
  • 3.35MB
  • 下载

webrtc中base库在linux平台的编译

  • 2017年11月14日 19:42
  • 1.77MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:libPhenom库编译
举报原因:
原因补充:

(最多只允许输入30个字)