linux下thrift非root权限用户的编译安装(RedHat)

时间:2021-10-08 09:28:49

在公司安装thrift,由于没有root权限,而且是redhat系统,所以在网上找的一片片的ubuntu下安装文章都是闲的如此的苍白无力


在努力了好几天以后终于能够在configure的步骤完成C++,JAVA,python库的支持了,好开心,下面就来跟大家分享一下


非默认路径下thrift的安装


下面就把我遇到的麻烦以及一些基本的步骤放上来吧,免得大家还得去找别的文章


1. 下载


2. 基本安装 

所谓基本安装就是你拥有高大上的root权限!!!


首先你要安装好各种依赖 

sudo yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby-devel

基本安装就是说你的东东都放在它默认的路径的地方,boost在/usr/local , 剩下的java,python,cpp的默认位置可以通过

./configure --help来查看

make

make install


        点击进入官方的安装教程



3.华丽丽的我的安装步骤如下

$ ./configure JAVA_PREFIX=/* CPP=/* --prefix=/data/lihongyan --without-perl --without-php --without-c --without-ruby --without-haskell --without-erlang --without-d --without-go --without-csharp --with-boost=/*

这里要特殊强调一下,--with-boost=后面接的路径是include和lib文件夹所在的文件夹,也就是说如果你的include路径是 */boost/include 的话你的'='后面要接 */boost


结果显示cpp·,java,python的库都成功的话,恭喜你,你已经完成了我一天的工作。


然后是make,make的时候我遇到了一个错误

libtool: link: ar cru .libs/libstresstestgencpp.a .libs/StressTest_constants.o .libs/StressTest_types.o .libs/Service.o 
ar: .libs/StressTest_constants.o: No such file or directory

啊呀我擦!闹心!

经观察发现test/cpp/下有这些.o结尾的文件,是不是make时候路径搞错了啊?不管,cp到test/cpp/.libs/下面,缺啥cp啥(事实证明,都缺。。。。)

cp后,成功!


然后make install就行了!不过java的文件如果你没有权限的话还是不能拷贝到它默认的/usr/local下的,这个不怕,反正我们jar包都有了,网上介绍也一大堆,自己再去溜达溜达吧。


还有的一点就是,各种依赖的安装过程如果没有root权限也是很漫长的一件事情。我在boost的编译下都卡了好久


最后祝各位装什么软件都不花时间不闹心=。=