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,测试网站在压力下工作...
  • xiaoxiaoyeyaya
  • xiaoxiaoyeyaya
  • 2015年01月09日 00:52
  • 144110

libPhenom库编译

libPhenom是Facebook发布的一个C语言事件框架,用于构建高性能和高可扩展的系统。支持多线程、提供内存管理和常用数据结构、json处理。 以下是编译过程: 一、环境准备 所用的操作系统环境...
  • virgildmc
  • virgildmc
  • 2015年11月19日 17:32
  • 644

开源代码网站

!!!github!!!codepen!!!码云 (1)到sourceforge上查找相关代码; (2)到google code上面查找具体的代码; (3)到...
  • yjreset
  • yjreset
  • 2018年01月17日 09:29
  • 173

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

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

libphenom 学习笔记

参考资料: libphenom文档 How-does-libphenom-work 引用计数源码: include/phenom/refcnt.htypedef int ph_refcnt_t; vo...
  • samuelyao314
  • samuelyao314
  • 2017年10月20日 21:48
  • 92

寻找开源代码的方式

我平时看代码主要是C和C++代码为主,Java代码也会偶尔看一下。平时除了自己积累一些代码之外,也会主动去寻找一些代码,比如说, (1)到sourceforge上查找相关代码; (2)到googl...
  • benpaobagzb
  • benpaobagzb
  • 2016年02月29日 21:33
  • 1739

开源代码网站

!!!github!!!codepen!!!码云 (1)到sourceforge上查找相关代码; (2)到google code上面查找具体的代码; (3)到...
  • yjreset
  • yjreset
  • 2018年01月17日 09:29
  • 173

libPhenom 编译

安装 http://c-ares.haxx.se/ 安装 http://concurrencykit.org/ \cp build/ck.pc  /usr/lib64/pkgconfig/ $ ...
  • u013834131
  • u013834131
  • 2014年06月23日 17:16
  • 1741

Linux下使用开源代码及编译使用动态库

1.Linux平台上安装OpenCV 请参照http://jingyan.baidu.com/article/14bd256e466474bb6d2612db.html 注意: 1)、编译命令:...
  • SpaceBoundApple
  • SpaceBoundApple
  • 2016年04月20日 19:32
  • 322

C++库资源汇总

转载、记录别人的博客中的有用信息: 值得学习的C语言开源项目 - 1. Webbench Webbench是一个在Linux下使用的非常简单的网站压测工具。它使用fork()模拟多...
  • dpstill
  • dpstill
  • 2017年03月22日 16:14
  • 576
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:libPhenom库编译
举报原因:
原因补充:

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