thrift例程编译报错原因和解决方法总结

2023-05-16

thrift里自带的turoral,使用make编译时经常会报错,总结如下:

1.如果出现如下错误:

              error: ‘uint8_t’ does not name a type

                error: ‘uint32_t’ does not name a type

编译时需要加上:-DHAVE_NETINET_IN_H

如果是在cdt里编译,需要在工程配置-》C/C++ Build/Settings->Tool Settings->GCC C++ Compiler->Preprocessor->Defined Symbols(-D)中添加HAVE_NETINET_IN_H即可


2.如果出现:

 1)undefined reference to `apache::thrift::TApplicationException::write(apache::thrift::protocol::TProtocol*) const'

 2)complains about undefined reference to
`apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport>::VERSION_1'

需要修改/usr/include/thrift/protocol/TBinaryProtocol.h

中的:

static const int32_t VERSION_MASK = 0xffff0000;
static const int32_t VERSION_1 = 0x80010000

static const uint32_t VERSION_MASK = 0xffff0000;
static const uint32_t VERSION_1 = 0x80010000;

3.如果还报错:

undefined reference to `apache::thrift::transport::TServerSocket::TServerSocket等错误,需要修改makfile,把编译命令里的-lthrift挪到命令的后边,即待编译文件之后



最后,thrift的使用例程还可以参考官方的wiki:

http://wiki.apache.org/thrift/ThriftUsageC%2B%2B


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

thrift例程编译报错原因和解决方法总结 的相关文章

  • python 连接 hive

    由于版本的不同 Python 连接 hive 的方式也就不一样 在网上搜索关键字 python hive 的时候可以找到一些解决方案 大部分是这样的 首先把hive 根目录下的 HIVE HOME lib py拷贝到 python 的库中
  • Eclipse 部署Thrift 实例 & 服务模型实例演示(java)

    一 Eclipse 部署Thrift 实例 注 需要1 工具包thrift 0 9 0 ext 下载地址http download csdn net detail xyw eliot 5414527 2 Java语言Thrift工程需要的j
  • 使用 Apache Thrift 进行服务多路复用

    服务器代码 TMultiplexedProcessor processor new TMultiplexedProcessor processor registerProcessor AddService new AddService Pr
  • Thrift - 从简单的 JSON 转换

    我创建了以下 Thrift 对象 struct Student 1 string id 2 string firstName 3 string lastName 现在我想从 JSON 中读取这个对象 根据这个post这个有可能 所以我写了下
  • 循环遍历maven中的特定资源文件生成源

    我使用 maven antrun plugin 从 thrift IDL 生成源代码 我有一个单独的项目 和 jar 来保存这些生成的源 并且这个插件不支持通配符替换 所以我不能说 thrift 我使用执行任务来生成源代码并将它们复制到 s
  • apache thrift C++ 异步客户端

    我正在寻找 C 异步客户端和非阻塞 C 服务器实现 我在 apache 中看到一些邮件档案 但该活动是 2009 年末的 想知道最新的 thrift 是否支持它 我正在对 C 代码使用 cob style 选项 但生成的代码无法编译 将不胜
  • 节省消息中的大文件

    我使用 thrift 通过 tcp 进行二进制协议 用于发送和读取文件 最大大小为 64MB 节俭能做到这一点吗 我曾想过使用 struct SomeMessage 1 byte data 节俭的效率如何 编组 解组 通过电线发送 Thri
  • HDFS Thrift服务器返回本地FS的内容,而不是HDFS

    我正在使用 Thrift 访问 HDFS 这是 HDFS 上预期的 也是正确的 内容 hadoop hdp namenode 01 hadoop fs ls Found 3 items drwxr xr x hadoop supergrou
  • 可以从现有的 java/scala 接口和数据类型生成 .thrift 文件吗?

    有没有一种简单的方法可以采用现有的 Java scala 数据类型和 API 接口并生成相应的 thrift 文件 让 Thrift 生成server数据结构具有过度侵入性 因为它会产生以下后果 我无法注释我的数据结构 例如 XML JSO
  • 运输例外

    我正在尝试导入 happybase 但在连接时收到以下错误消息 我已经运行了 Hadoop 伪节点集群和 Hbase 安装的组件版本如下 Hadoop 版本 1 0 4 Hbase 版本 0 94 4 快乐基地 0 4 有人可以查看下面的例
  • 如何对二进制 Thrift 文件进行逆向工程?

    我被要求处理一些序列化为二进制的文件 不幸的是不是文本 JSON Thrift http incubator apache org thrift 对象 但我无权访问创建这些文件的程序或程序员 所以我不知道它们的结构 字段顺序等 有没有办法使
  • Apache Thrift 和 ZeroMQ 之间的区别

    据我了解 Apache Thrift 和 ZeroMQ 是属于不同类别的软件 并且很难进行比较 因为这是苹果与橘子的比较 但我不知道为什么它们属于不同的类别 它们不是都用于在不同的服务之间传递数据吗 这些服务可能用不同的语言编写 也可能不是
  • 从 erlang 插入 cassandra

    我正在尝试从 Erlang R14B02 通过 thrift 0 6 1 将一些内容插入到 cassandra 0 7 6 中 我正在做以下事情 读取记录定义 rr cassandra types 连接到卡桑德拉 ok C thrift c
  • 在 C++ 中将序列化的 Thrift 结构序列化到 Kafka

    我有一套structs定义于Thrift例如以下内容 struct Foo 1 i32 a 2 i64 b 我需要执行以下操作C a 序列化实例Foo转换为 Thrift 兼容字节 使用Binary or Compact节俭协议 b 将字节
  • Thrift gem 和 JRuby

    我最近在 MRI 中使用 JRuby 和 Thrift gem 后才安装了它 我遇到了一个问题 如果我需要 thrift 我会收到消息 无法加载 thrift native 扩展 默认为纯 Ruby 库 如果我随后尝试要求在 ruby 中生
  • 如何在 Java 中对 Hive 进行异步调用?

    我想以异步方式在服务器上执行 Hive 查询 Hive 查询可能需要很长时间才能完成 因此我不想阻止调用 我目前正在使用 Thirft 进行阻塞调用 在 client execute 上阻塞 但我还没有看到如何进行非阻塞调用的示例 这是阻止
  • HBase 上的 Thrift 有性能基准吗?

    我有一个可以将大量数据写入 hbase 的系统 系统是用c 编写的 发现hbase有其他语言的thrift接口 我的问题是 HBase 上的 Thrift 有性能基准吗 与java原生api相比 最劣势是什么 我推荐最近关于这个主题的两篇博
  • 停止 Thrift 服务器(TSimpleServer)

    我有一个 Thrift 服务器的简单用例 TSimpleServer 其中我生成了几个线程 除了主线程之外 新生成的线程之一进入 Thrift 事件循环 即server serve 在主线程中收到信号后 我调用server stop 这导致
  • 如何使用 Apache Thrift 将图像从 Python 流式传输到 C++

    如何使用 Apache Thrift 流式传输文件 图像 我搜索了很多关于 Thrift 的信息 但没有找到任何与之相关的书面文档 为什么 Facebook 在没有文档的情况下开源这个项目 我建议的方法是设置您的服务以分块传送数据 如下所示
  • 使用 Thrift 通过共享内存进行 IPC 通信

    我找不到关于如何使用 apache thrift 通过共享内存进行 ipc 通信的足够示例 我的目标是在 thrift 的帮助下序列化现有的类 然后通过共享内存发送到另一个进程 在该进程中我在 thrift 的帮助下再次反序列化它 现在我正

随机推荐

  • Js apply方法详解,及其apply()方法的妙用

    Js apply方法详解 我在一开始看到javascript的函数apply和call时 非常的模糊 看也看不懂 最近在网上看到一些文章对apply方法和call的一些示例 总算是看的有点眉目了 在这里我做如下笔记 希望和大家分享 如有什么
  • 如何安装双系统之ubuntu安装

    如何安装双系统之ubuntu安装 1 首先在Windows下对磁盘分出一块空闲分区大概100G左右 2 然后下载Ubuntu16 04镜像 xff0c 制作启动盘 3 重启电脑 xff0c 按住对应的键 xff08 不同电脑型号可能不同 x
  • 场景分类综述——Remote Sensing Image Scene Classification Meets Deep Learning

    一 场景分类面临的挑战 场景分类的挑战包括 xff1a 1 类内多样性大 xff0c 2 类间相似性高 也称为类间可分性低 xff0c 3 对象 场景尺度的差异大 就类内的多样性而言 xff0c 挑战主要来自于在同一个语义类中出现的地物的巨
  • 配置服务器的磁盘阵列并正确分区

    磁盘阵列 xff0c 即独立磁盘冗余阵列RAID xff08 Redundant Array of Independent Disks xff09 xff0c 其实就是一个将多块独立磁盘结合在一起 xff0c 从而提高数据的可靠性和I O性
  • 软件项目组织架构安排

    这个主题涉及到三个方面 xff0c 项目计划管理 组织管理和技术管理范畴 项目计划管理是项目管理中的一个大篇章 xff0c 包括时间计划 成本计划 费用计划等在内的各类计划管理 xff0c 不是本文章所谈的范围 xff0c 只是本文主题涉及
  • SpringBoot2.x学习(二):为属性注入配置文件中的值:@ConfigurationProperties注解的使用

    文章目录 一 64 ConfigurationProperties 简单介绍二 64 ConfigurationProperties 使用示范1 创建两个 javaBean2 在 SpringBoot 全局配置文件写入需要注入的值2 1 a
  • SpringBoot 2.x学习(三):为属性注入配置文件中的值:@Value 注解的使用

    文章目录 一 64 Value 注解的作用二 使用 64 Value 为普通成员变量注入值1 字面量 xff08 1 xff09 语法 xff08 2 xff09 举例 2 Spring 表达式 xff08 SpEL xff09 xff08
  • 数据结构与算法学习(一):线性表之数组的插入与删除(Java 实现)

    文章目录 一 数组介绍1 线性表2 连续的内存空间和类型相同的数据 二 利用数组实现插入操作及相应的时间复杂度分析1 数组原本有顺序 xff0c 插入后需要继续保持数组有序 xff08 1 xff09 思路分析 xff08 2 xff09
  • 抽象类与接口

    抽象类与接口 接口与抽象类 一 抽象类 说起抽象类 xff0c 我们先说一下如何定义一个抽象方法 span class token keyword abstract span span class token keyword class s
  • SpringBoot 项目集成 mybatis-generator

    SpringBoot 项目集成 mybatis generator mybatis 官方提供了一个插件 xff1a myabtis generator xff0c 可以根据数据库中的表生成对应的实体类和针对单表的一些操作方法 xff0c 可
  • InnoDB 和 MyISAM 的区别

    这里写自定义目录标题 MyISAMINNODB事务支持不支持支持数据行锁定不支持 xff08 表锁 xff09 支持 xff08 行锁 xff09 外键约束不支持支持全文索引支持不支持表空间的大小较小较大 xff0c 约为 2 倍 MyIS
  • xshell上传、下载文件

    安装 lrzsz yum y span class token function install span lrzsz 上传资源到服务器命令 rz 回车后 xff0c 会出现一个弹框 xff0c 选择上传的文件即可 从服务器下载资源命令 s
  • 浅谈vue+webpack项目调试方法

    题外话 xff1a 这几个月用vue写了三个项目了 xff0c 从绊手绊脚开始慢慢熟悉 xff0c 婶婶的感到语言这东西还是得有点框框架架 xff0c 太自由了容易乱搞 xff0c 特别人多的时候 从webpack开始 直接进入正题 有人觉
  • CentOS7下vlan网卡配置

    操作系统 xff1a CentOS 7 x86 64 Everything 1804 开源虚拟软件 xff1a Oracle VM VirtualBox 因为使用VirtualBox默认配置所以网卡设备名是enp0s3 root 64 lo
  • 12、基本数据链路层协议(数据链路层)

    1 基本数据链路层协议 引言 在考察协议之前 xff0c 先明确一下有关底层通信模型的基本假设是有必要的 首先我们假设物理层 数据链路层和网络层都是独立的进程 xff0c 它们通过来回传递信息进行通信 如图所示 xff0c 物理层进程和某些
  • Java 中的上转型和下转型

    在我们的日常中 xff0c 上转型和下转型都使用的比较少 xff0c 所以当别人问起来什么是上转型 xff0c 什么是下转型 xff0c 自己往往一片模糊 xff0c 或者不能将他们进行明显的区分 在这里 xff0c 我将以我个人理解来论述
  • MySQL 中 Join 的基本实现原理

    http isky000 com database mysql join buffer nested loop implement DataBase Dec 3rd 2008 作者 xff1a Sky Jian 可以任意转载 但转载时务必以
  • mysql 常用命令

    1 mysqldump 可以把现有数据库中的表结构以及数据导入到一个文本文件中 mysqldump u root socket 34 socketname 34 p tpch no data gt tpch sql 如果不加上 no dat
  • 完全二叉树学习

    定义 xff1a 假设高度为h xff0c 那么前h 1层都是满的 xff0c 最后一层 xff0c 从左向右 xff0c 连续集中在最左边 xff1b k层的完全二叉树总节点个数最小为2 k 1 xff0c 最大节点个数为2 k 1 可以
  • thrift例程编译报错原因和解决方法总结

    thrift里自带的turoral xff0c 使用make编译时经常会报错 xff0c 总结如下 xff1a 1 如果出现如下错误 xff1a error uint8 t does not name a type error uint32