欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Gearman::XS在Centos下的編譯安裝方法

 更新時間:2014年07月08日 16:23:37   投稿:shichen2014  
這篇文章主要介紹了Gearman::XS在Centos下的編譯安裝方法,需要的朋友可以參考下

本文簡述了Gearman::XS在Centos下編譯安裝方法,供大家參考學(xué)習(xí)一下!

目前Gearman能夠支持各種語言,其官網(wǎng)的描述如下:
 

Language Bindings/Drivers/Frameworks
Select your language – cross links to download section which details all your options.
C, C#/.NET, Go, Java, Lisp, Nodejs, PHP, Perl, Python, Ruby, Database UDFs.

 
個人嘗試了C、python、perl三種語言的API,感覺perl的API功能相對來說齊全一點。Gearman::XS是perl的開源支持。其鏈接如下:http://search.cpan.org/~krow/Gearman-XS/

在RHEL5.7下安裝的Gearman::XS,中間會出現(xiàn)各種問題,此處給出這些問題的解決方法供大家參考。

首先,我使用了cpanm來安裝Gearman::XS,結(jié)果如下:

[@localhost yunfei]# cpanm Gearman::XS
--> Working on Gearman::XS
Fetching http://www.cpan.org/authors/id/K/KR/KROW/Gearman-XS-0.15.tar.gz ... OK
Configuring Gearman-XS-0.15 ... OK
Building and testing Gearman-XS-0.15 ... FAIL
! Installing Gearman::XS failed. See /root/.cpanm/work/1392343258.18128/build.log for details. Retry with --force to force install it.

顯然force強(qiáng)制安裝肯定是不行的,所以就找原因。查看 /root/.cpanm/work/1392343258.18128/build.log文件,發(fā)現(xiàn)其中有如下的提示:

gcc -c -Wall -Wundef -Wno-shadow -Wmissing-prototypes -fdiagnostics-show-option -Wformat=2 -Wstrict-aliasing -Wextra -Wmissing-declarations -Wcast-align -Wswitch-default -Wswitch-enum -Wno-undef -Wno-unused-value -Wno-unused-variable -Wno-unused-parameter -Wno-format-invalid-specifier -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -DVERSION=\"0.15\" -DXS_VERSION=\"0.15\" -fPIC "-I/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE" XS.c
cc1: error: unrecognized command line option "-Wno-format-invalid-specifier"
make: *** [XS.o] Error 1
-> FAIL Installing Gearman::XS failed.

看到是在編譯的時候出了問題,所以,咱們切換到它的編譯目錄(即 /root/.cpanm/work/1392343258.18128/這個目錄)

cd /root/.cpanm/work/1392343258.18128/Gearman-XS-0.15

然后執(zhí)行make命令,就可以看到上面報的編譯錯誤了。ok,下面就著手解決它。

vi Makefile

可以找到:

CCFLAGS = -Wall -Wundef -Wno-shadow -Wmissing-prototypes -fdiagnostics-show-option -Wformat=2 -Wstrict-aliasing -Wextra -Wmissing-declarations -Wcast-align -Wswitch-default -Wswitch-enum -Wno-undef -Wno-unused-value -Wno-unused-variable -Wno-unused-parameter -Wno-format-invalid-specifier

刪掉最后的“-Wno-format-invalid-specifier”這個選項,然后保存退出,再次執(zhí)行make。
 
會發(fā)現(xiàn)報出如下錯誤:

In file included from XS.xs:11:
gearman_xs.h:18:36: error: libgearman-1.0/gearman.h: No such file or directory
XS.c: In function 'XS_Gearman__XS_strerror':
XS.c:229: error: 'gearman_return_t' undeclared (first use in this function)
XS.c:229: error: (Each undeclared identifier is reported only once
XS.c:229: error: for each function it appears in.)
XS.c:229: error: expected ';' before 'rc'
XS.xs:82: warning: implicit declaration of function 'gearman_strerror'
XS.xs:82: error: 'rc' undeclared (first use in this function)
XS.xs:82: warning: assignment makes pointer from integer without a cast
make: *** [XS.o] Error 1

很明顯,是找不到gearman.h,也就是說需要gearman-devel,正常情況下通過yum直接安裝gearman-devel包就可以解決這個問題,但是,我的rhel是手動安裝的Gearman-1.1.11版本,和yum安裝的版本不一致,所以,再次打開并修改Makefile。

找到INC以及LDDLFLAGS,修改為如下內(nèi)容:

LDDLFLAGS = -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -L/usr/local/gearman/lib/ -lgearman
 
INC = -I/usr/local/gearman/include/ -L/usr/local/gearman/lib/

可以看到就是加入了Gearman的incule以及l(fā)ib相關(guān)的東西。保存退出Makefile,再次執(zhí)行make,順利通過,然后make install就安裝完畢了。

相關(guān)文章

  • Shell腳本傳遞參數(shù)的4種方式實例說明

    Shell腳本傳遞參數(shù)的4種方式實例說明

    Shell腳本是一種命令語言,可以用于自動化執(zhí)行各種任務(wù),在腳本中,我們可以通過參數(shù)來傳遞信息,本文將介紹如何在shell腳本中傳遞參數(shù),包括位置參數(shù)、特殊變量、環(huán)境變量和命名參數(shù),需要的朋友可以參考下
    2023-06-06
  • Linux vim編輯命令模式

    Linux vim編輯命令模式

    vi(vim)是上Linux非常常用的編輯器,很多Linux發(fā)行版都默認(rèn)安裝了vi(vim)。這篇文章給大家介紹了Linux vim編輯命令模式,非常不錯,感興趣的朋友參考下吧
    2016-11-11
  • Shell退出狀態(tài)碼及其應(yīng)用詳解

    Shell退出狀態(tài)碼及其應(yīng)用詳解

    這篇文章主要介紹了Shell退出狀態(tài)碼及其應(yīng)用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • shell子進(jìn)程多任務(wù)實現(xiàn)進(jìn)程高并發(fā)

    shell子進(jìn)程多任務(wù)實現(xiàn)進(jìn)程高并發(fā)

    本文主要介紹了shell子進(jìn)程多任務(wù)實現(xiàn)進(jìn)程高并發(fā),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • shell實現(xiàn)貪吃蛇的示例代碼

    shell實現(xiàn)貪吃蛇的示例代碼

    本文主要介紹了shell實現(xiàn)貪吃蛇的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • 利用shell刪除數(shù)據(jù)表中指定信息和字段對應(yīng)的文件

    利用shell刪除數(shù)據(jù)表中指定信息和字段對應(yīng)的文件

    這篇文章主要介紹了利用shell刪除數(shù)據(jù)表中指定信息和字段對應(yīng)的文件,需要的朋友可以參考下
    2014-04-04
  • Hadoop單機(jī)版和全分布式(集群)安裝

    Hadoop單機(jī)版和全分布式(集群)安裝

    Hadoop,分布式的大數(shù)據(jù)存儲和計算, 免費開源,本文介紹Hadoop單機(jī)版、集群安裝步驟。
    2013-10-10
  • Linux使用文本編輯器vi常用命令

    Linux使用文本編輯器vi常用命令

    vi就是一種功能強(qiáng)大的文本編輯器,而vim則是高級版的vi,不但可以用不同顏色顯示文字內(nèi)容,還能進(jìn)行諸如shell腳本、C語言程序編輯等功能,可以作為程序編輯器。下面通過本文給大家介紹linux 文本編輯器vi常用命令,一起看看吧
    2017-09-09
  • ./ 和 sh 的使用區(qū)別詳解

    ./ 和 sh 的使用區(qū)別詳解

    這篇文章主要介紹了./ 和 sh 的使用區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • shell字符串截取報錯:Bad substitution的解決

    shell字符串截取報錯:Bad substitution的解決

    這篇文章主要介紹了shell字符串截取報錯:Bad substitution的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10

最新評論