thrift编译java的问题-(安装thrift0.8.0成功-编译mapkeeper.java成功)
上一次帖子说了thrift编译java出现错误,由于只用到cpp版的,就将此略过。但是老版本的ycsb不是很好用,于是决定以locall的方式编译mapkeeper供最新版ycsb使用。目前根据
https://github.com/brianfrankcooper/YCSB/pull/262/files
https://github.com/baonguyen84/YCSB
的说法,在mapkeeper下的thrift中编译出的jar文件拷贝安装到(换名,上面第二个链接)ycsb下就可以用了。
因此,本帖进行对编译java版的错误进行解决。
1. 怀疑是thrift版本的问题。安装的版本是0.9.2,估计需要0.8.0版本。
首先,ll /usr/local/cuda-8.0/lib64 /usr/lib/x86_64-linux-gnu/libfakeroot /usr/local/lib /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-375 /usr/lib32/nvidia-375 /lib32 /usr/lib32 /lib /usr/lib |grep thrift
发现有很多thrift包,而且很多是0.9.2版本的,这些是手动安装的,在0.9.2版本下进行make uninstall后删除了大部分,并且再次在mapkeeper thrift下make时就出现了make: /usr/local/bin/thrift: Command not found 的错误。
然后在手动把其他的删除掉(目录 /usr/local/lib)
2. 装0.8.0的问题
首先是 LoadError: cannot load such file — spec/rake/spectask
/home/lds/mapkeeper/thrift-0.8.0/lib/rb/Rakefile:24:in `<top (required)>'
根据 https://stackoverflow.com/questions/25622488/loaderror-cannot-load-such-file-spec-rake-spectask-fedena 将 Rakefile 进行了修改
仍然是该错误,只是 spec/rake/spectask 换成了 rspec/core/rake_task
再根据 https://stackoverflow.com/questions/30114733/loaderror-cannot-load-such-file-rspec-core-rake-task
After : sudo gem install bundler
I created a Gemfile with:
gem 'rake'
gem 'rspec'
gem 'kramdown'
and did bundle install . Now I dont get the error.
这个操作要根据 https://stackoverflow.com/questions/30358612/how-to-create-a-gemfile 这个来,也就是随便找个目录创建这个文件,然后在此目录运行 bundle install 。
成功后,再次make,出现
rake aborted!
NameError: uninitialized constant Spec
Did you mean? RSpec
3.
卸载新的rspec,装老的
https://guleriay2k.wordpress.com/2011/04/26/after-installing-rspec-if-you-get-no-such-file-to-load-specrakespectask/
https://www.reddit.com/r/ruby/comments/3ess4g/how_to_uninstall_rspec/
sudo gem install -v=1.3.0 rspec
还是没有解决
4. 最终,直接在thrift编译时选择不要ruby
https://stackoverflow.com/questions/13498721/cannot-build-apache-thrift-due-to-ruby-rake-errors
$ ./configure --without-ruby
成功解决,成功编译了thrift 0.8.0
make instal 成功
5. 此时在mapkeeper下的thrift中make时,会出现uint32_t 未定义等错误,这是生成c++时的错误。
此时,跳过编译c++,直接进入gen-java进行 mvn clean package
成功,生成了mapkeeper-1.1-SNAPSHOT.jar
thrift编译java的问题-(安装thrift0.8.0成功-编译mapkeeper.java成功)的更多相关文章
- Thrift0.11.0基于Intellij IDEA的简单的例子
前言 目前流行的服务调用方式有很多种,例如基于 SOAP 消息格式的 Web Service,基于 JSON 消息格式的 RESTful 服务等.其中所用到的数据传输方式包括 XML,JSON 等,然 ...
- CefSharp基于.Net Framework 4.0 框架编译
CefSharp基于.Net Framework 4.0 框架编译 本次源码使用的是Github上CefSharp官方的79版本源码 准备 IDE Visual Studio 2017 Enterpr ...
- Apache Thrift 在Windows下的安装与开发
Windows下安装Thrift框架的教程很多.本文的不同之处在于,不借助Cygwin或者MinGW,只用VS2010,和Thrift官网下载的源文件,安装Thrift并使用. 先从官网 下载这两个文 ...
- hadoop-2.2.0 的编译安装及HA配置
一 准备工作 准备工作中要求有 1.centOs 6.4,添加hadoop用户,配置集群内的/etc/hosts文件. 2.安装hadoop用户的ssh,并打通集群内所有机器,(ha执行fencing ...
- Java学习-001-JDK安装配置
本节主要讲述在 Win7 64bit 系统下安装.配置 JDK8u25,敬请参阅.详细步骤如下: 一.JDK下载 您可到 官方网站 或 我的云盘 下载,对应的JDK8u25的安装程序,下载过程不再赘述 ...
- 【转】ubuntu下安装eclipse以及配置python编译环境
原文网址:http://blog.csdn.net/wangpengwei2/article/details/17580589 一.安装eclipse 1.从http://www.eclipse.or ...
- 在CUDA8.0下编译安装OpenCV3.1.0来实现GPU加速(Compiling OpenCV3.1.0 with CUDA8.0 support)
在CUDA8.0下编译安装OpenCV3.1.0 一.本人电脑配置:ubuntu 14.04, NVIDIA GTX1060. 二.编译OpenCV3.1.0前,读者需要成功安装CUDA8.0(网上有 ...
- Java基础:Java简介及安装配置(1)
Java简介 Java是Sun公司于1995年推出的高级编程语言,具有跨平台特性,编译后的程序能够运行在多种类型的操作系统平台上. 1.1 Java应用程序版本 Java的3个独立用于开发不同类型应用 ...
- Thrift-0.10.0 CenOS 7 编译错误 error: expected ')' before 'PRIu32'
Thrift-0.10.0 CenOS 7 编译错误 error: expected ')' before 'PRIu32' 在编译Thrift的时候,无论是Apache官网tar包,还是Github ...
随机推荐
- IntelliJ IDEA出现Search for无法退出的问题
说明: 1.这个不是安装了Vim导致的 解决方式: 1.可能是在不正确的系统时间启动的IDEA,然后启动完成后又把时间改成正确的. 2.直接方式是重启. 3.间接方式是修改完时间后再重启一下全部IDE ...
- IOS开发之----两种保存用户名和密码实现记住密码库
使用Keychain存储用户敏感信息 iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书等)的方式,每个ios程序都有一个独立的keychain存储.相对于 NSUserDe ...
- sqlite数据库转换为mysql数据库
SQLite工具我用的SQLiteStudio2.1.5 下载地址 http://sqlitestudio.pl/?act=download SQLiteStudio打开数据库文件,点工具->导 ...
- win10安装scrapy
前提已经安装好python2.7背景:scrapy框架,windows下的部署工作挺麻烦的.需要用的资源整合了一下可以为以后需要的同学节省不少时间. 相关文件:网盘链接: http://pan.bai ...
- tcp ip协议笔记(1)——简单介绍
前言 本人记性不佳,看书健忘,以此笔记来记录看书后自己所知所想,已达到加深对tcp ip的理解.本笔记不过我看完书后自己所写的总结,权当是书后复习. 一.为什么会有tcp ip协议 ...
- Content Provider 详解
几个概念:Cursor. Content provider . Uri .contentresolver 1. Cursor : 个人理解为数据库中的一行数据,它是每行数据的集合.它是一个类.通过它 ...
- Java依照List内存储的对象的某个字段进行排序
关键点:将List内存储的对象实现Comparable类.重写它的compareTo()方法就可以 Bean: package chc; public class StuVo implements C ...
- Ubuntu 16.04 引导修复(Boot Repair)----lianwang----anzhuang windows hou(双系统修复一)
2016-01-26 20:54 12548人阅读 评论(1) 收藏 举报 分类: =======学习心得=======(23) 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] ...
- PE发送报文
步骤: 1. 在 action 中使用发送报文,要指定报文在 router 端的交易名称 2. 如果使用 supe.execute(context) 来发送,不需要第一步 3. 配置从网银到 rout ...
- svn服务器迁移(windows下)
废话不多说,直接上步骤: 服务端: 1.创建一个备份文件夹 如:D:\svn_bak 2.进入cmd,cd命令到你的svn服务器安装目录的bin文件下,本人的安装目录在 D:\Program File ...