当前位置: 首页 > news >正文

ubuntu:20.04编译arrow

1)拉取代码

git clone https://github.com/apache/arrow.git

2)切换分支

git checkout apache-arrow-11.0.0

3)拉入测试数据并设置环境变量

pushd arrow
git submodule update --init
export PARQUET_TEST_DATA="${PWD}/cpp/submodules/parquet-testing/data"
export ARROW_TEST_DATA="${PWD}/testing/data"
popd

4)使用conda

conda包管理器允许将 Arrow C++ 和 PyArrow的构建时依赖项安装为预构建的二进制文件,这可以使 Arrow 开发更轻松、更快速。

让我们创建一个 conda 环境,其中包含来自 conda-forge 的所有 C++ 构建和 Python 依赖项,目标是 Python 3.8 的开发:

conda create -y -n pyarrow-dev -c conda-forge \--file arrow/ci/conda_env_unix.txt \--file arrow/ci/conda_env_cpp.txt \--file arrow/ci/conda_env_python.txt \--file arrow/ci/conda_env_gandiva.txt \compilers \python=3.8 \pandas

5)激活pyarrow-dev

conda activate pyarrow-dev

 

 注意:

如果不使用 conda,您必须安排您的系统提供所需的构建工具和依赖项。请注意,如果缺少某些依赖项,Arrow C++ 构建链可能仍然能够即时下载和编译它们,但这将比预安装的二进制文件花费更长的时间。

在 macOS 上,使用 Homebrew 安装构建 Arrow C++ 所需的所有依赖项:

brew update && brew bundle --file=arrow/cpp/Brewfile


请参阅此处以获取您可能需要的依赖项列表。

在 Debian/Ubuntu 上,您需要以下最少的依赖项:

 apt-get install build-essential cmake python3-dev

6)创建python虚拟环境

python3 -m venv pyarrow-dev
source ./pyarrow-dev/bin/activate
pip3 install -r arrow/python/requirements-build.txt# This is the folder where we will install the Arrow libraries during
# development
mkdir dist

7)设置环境变量,让 Arrow 的构建系统知道我们的构建工具链

export ARROW_HOME=$(pwd)/dist
export LD_LIBRARY_PATH=$(pwd)/dist/lib:$LD_LIBRARY_PATH
export CMAKE_PREFIX_PATH=$ARROW_HOME:$CMAKE_PREFIX_PATH

 

http://www.lryc.cn/news/19449.html

相关文章:

  • 2023如果纯做业务测试的话,在测试行业有出路吗?
  • golang grpc ssl
  • 华为服务器驱动下载及安装
  • 【Shell】常用命令合集
  • 15- 答题卡识别及分数判定项目 (OpenCV系列) (项目十五)
  • LeetCode 热题 C++ 146. LRU 缓存
  • Java线程池使用与原理解析(线程池优点、使用方法、参数含义及线程池运转机制)
  • mybatis入门配置
  • 黑客入门(超级详细版)
  • Java多线程(三)---synchronized、Lock和volatile
  • JVM-Java内存区域
  • 毕业季,毕业论文查重,paper系列五个免费查重网站推荐
  • 破解票房之谜:为何高票房电影绕不过“猫眼们”?
  • 订单服务-----遇到的问题及解决方案
  • 项目经理如何度量项目?及项目度量指标实例【静说】
  • 我们应该如何优雅的处理 React 中受控与非受控
  • 力扣热题100Day06:20. 有效的括号,21. 合并两个有序链表,22. 括号生成
  • 【Yolov5】保姆级别源码讲解之-推理部分detect.py文件
  • 无重叠区间-力扣435-java贪心策略
  • Python使用VTK对容积超声图像进行体绘制(三维重建)
  • JAVA设计模式之工厂模式讲解
  • 近万字概述L3及以上自动驾驶故障运行和故障安全机制
  • kafka入门到精通
  • es-09模糊查询
  • 57 - 深入解析任务调度
  • CAN总线开发一本全(3) - 微控制器集成的FlexCAN外设
  • Elasticsearch7.8.0版本进阶——段合并
  • Java版贪食蛇游戏
  • 2023年度数学建模竞赛汇总
  • 了解Python语言和版本