TFS 安装使用GCC4.4版本
2014-11-25 10:56
211 查看
淘宝的tfs在帽子5(rhel 5.* && centos 5.*)下面编译不会出题,但是在6.*下面,就会有很多报错,原因在于5.*与6.*二个版本的gcc不一样,帽子5系列使用gcc版本是4.1.2,而新版本的6使用的4.4.6,后者对编译的语法检查更严格,使得很多代码在帽子5系列上编译没有问题,而在帽子6系统下编译通不过。
首先编译安装tblib(tb-common-utils),里面含有tbsys和tbnet,tfs依赖这二个库,这里我安装在和tfs同一个路径。就几个命令。
安装完成后应该可以看到如下目录
表明已安装tblib成功,接下来进入正题安装tfs,进入tfs目录,执行如下命令,如图
执行完上面的步骤后,就可以看configure,和安装其它的开源软件一样。
执行make,出现第一个报错,如图
一大堆的类型转换错误,查看Makefile,发现如下
编译添加-Werror,使用警告的错误直接报error,导致编译出错。修改所有的Makefile,去掉-Werror,如图
再次make,出现了第二个报错,如图:
仔细看会发现,gene_session_id定义的没有匹配到原型,原因在于session_util.h没有加stdint.h的头文件,如果是低版本的gcc在编译时不会出问题,高版本就会报错,修改session_util.h,添加stdint.h头文件,如下:
继续make,出现第三个报错,如图
原因一样,高版本gcc语法检测更严,修改meta_server_service.cpp,在1584行,代码里强制类型转换一下,如图,添加如下红框部分
再次make,没有问题了,完毕后make install一下,应该可以看到已经编译安装成功了。如图
---------------------------------------------------------------------------------
以下是我在编译安装是出现的错误和使用的解决方案:
make
报错:
uuid/uuid.h;No such file or directory
解决办法:
yum -y install libuuid-devel
首先编译安装tblib(tb-common-utils),里面含有tbsys和tbnet,tfs依赖这二个库,这里我安装在和tfs同一个路径。就几个命令。
安装完成后应该可以看到如下目录
表明已安装tblib成功,接下来进入正题安装tfs,进入tfs目录,执行如下命令,如图
执行完上面的步骤后,就可以看configure,和安装其它的开源软件一样。
执行make,出现第一个报错,如图
一大堆的类型转换错误,查看Makefile,发现如下
编译添加-Werror,使用警告的错误直接报error,导致编译出错。修改所有的Makefile,去掉-Werror,如图
再次make,出现了第二个报错,如图:
仔细看会发现,gene_session_id定义的没有匹配到原型,原因在于session_util.h没有加stdint.h的头文件,如果是低版本的gcc在编译时不会出问题,高版本就会报错,修改session_util.h,添加stdint.h头文件,如下:
继续make,出现第三个报错,如图
原因一样,高版本gcc语法检测更严,修改meta_server_service.cpp,在1584行,代码里强制类型转换一下,如图,添加如下红框部分
再次make,没有问题了,完毕后make install一下,应该可以看到已经编译安装成功了。如图
---------------------------------------------------------------------------------
以下是我在编译安装是出现的错误和使用的解决方案:
make
报错:
uuid/uuid.h;No such file or directory
解决办法:
yum -y install libuuid-devel
相关文章推荐
- Subversion(版本控制)安装及使用
- 安装和使用Windows Wget版本1.10.2
- Eclipse中SVN版本控制插件的安装和使用(转载)
- Eclipse中SVN版本控制插件的安装和使用 (转贴)
- Ubutun安装netbeans解决中文乱码问题, 使用subversion做版本控制, 使用fcitx输入法
- 使用 Microsoft SQL Server 2000 各种版本或组件而必须安装的操作系统
- linux版本之redhat9------终端中文软件zhcon0.2.6的安装及使用
- Eclipse中SVN版本控制插件的安装和使用
- QT 4.5 windows版本 安装问题 及 Junction 使用
- 【技术贴】安装 adobe flash player提示由于现有版本正在使用,因此无法安装Playe
- 使用 Microsoft SQL Server 2000 各种版本或组件而必须安装的操作系统
- CVS版本控制的安装配置与使用
- 使用DotNetNuke(DNN) Startkit 4.7(及以上版本)安装无法完成问题的解决方法
- HOWTO:使用任意版本的 Windows 7光盘 安装任意版本的 Windows 7
- rails安装、卸载、和使用 指定版本
- 提示该盘CD-ROM来自于比您当前使用的windows更旧的版本 该盘上的安装功能已被禁用
- 在安装有VS2008beta2版本的机子上使用vs2005进行部署出现问题的解决方法
- Notes 8 for Linux 本地化版本的安装和使用
- Java 版本问题 为什么安装新版本的 Java 后,使用命令查看返回的结果还是旧版本号?
- 【技术贴】安装 adobe flash player提示由于现有版本正在使用,因此无法安装Playe