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

OpenBLAS 从源码编译安装教程(Linux 用户)

OpenBLAS 从源码编译安装教程(Linux 用户)

OpenBLAS 是一个高性能 BLAS 库,支持多线程和 OpenMP,可用于科学计算、深度学习等场景。本文详细介绍如何从源码下载、编译、安装,并在用户目录下测试。

⚠️ 注意:本文中使用的安装路径/home/user/OpenBLAS-0.3.23仅作示例,请根据你自己的用户名修改。例如,如果你的用户名是abc,可以改为/home/abc/OpenBLAS-0.3.23,或者直接使用$HOME/OpenBLAS-0.3.23


1. 下载 OpenBLAS

在终端执行:

wgethttps://github.com/OpenMathLib/OpenBLAS/releases/download/v0.3.23/OpenBLAS-0.3.23.tar.gz

下载完成后,会得到OpenBLAS-0.3.23.tar.gz文件。


2. 解压源码

tar-zxvfOpenBLAS-0.3.23.tar.gzcdOpenBLAS-0.3.23

3. 编译 OpenBLAS

使用所有 CPU 核心,并启用 OpenMP、多线程优化:

make-j$(nproc)DYNAMIC_ARCH=0BINARY=64USE_OPENMP=1
  • -j$(nproc):使用当前 CPU 所有核心加速编译
  • DYNAMIC_ARCH=0:只针对当前机器架构编译
  • BINARY=64:生成 64 位版本
  • USE_OPENMP=1:启用 OpenMP 多线程支持

注意:这一步只是编译生成库文件,还没有安装到指定目录。


4. 安装 OpenBLAS

选择安装路径,例如用户目录示例:

make-j$(nproc)DYNAMIC_ARCH=0BINARY=64USE_OPENMP=1installPREFIX=/home/user/OpenBLAS-0.3.23

这一步会把编译好的库文件和头文件复制到:

/home/user/OpenBLAS-0.3.23/lib /home/user/OpenBLAS-0.3.23/include

5. 配置环境变量

为了系统能找到 OpenBLAS 库,需要设置环境变量:

echo'export OpenBLAS_HOME=/home/user/OpenBLAS-0.3.23'>>~/.bashrcecho'export LD_LIBRARY_PATH=$OpenBLAS_HOME/lib:$LD_LIBRARY_PATH'>>~/.bashrcecho'export LIBRARY_PATH=$OpenBLAS_HOME/lib:$LIBRARY_PATH'>>~/.bashrcecho'export CPATH=$OpenBLAS_HOME/include:$CPATH'>>~/.bashrcsource~/.bashrc
  • LD_LIBRARY_PATH:运行程序时搜索动态库路径
  • LIBRARY_PATH:编译时链接库路径
  • CPATH:编译时搜索头文件路径

6. 测试安装是否成功

6.1 检查库文件

ls/home/user/OpenBLAS-0.3.23/libls/home/user/OpenBLAS-0.3.23/include

如果看到libopenblas.socblas.h,说明安装目录正常。

6.2 编写并测试 C 程序

使用 Bash 创建测试程序文件:

cat>test_openblas.c<<'EOF' #include <stdio.h> #include <cblas.h> int main() { double x[3] = {1.0, 2.0, 3.0}; double y[3] = {4.0, 5.0, 6.0}; double result = cblas_ddot(3, x, 1, y, 1); printf("dot = %f\n", result); return 0; } EOF

编译测试程序:

gcc test_openblas.c\-I/home/user/OpenBLAS-0.3.23/include\-L/home/user/OpenBLAS-0.3.23/lib\-lopenblas-otest_openblas

运行:

./test_openblas

如果输出:

dot = 32.000000

说明 OpenBLAS 已经安装并可正常使用。

  1. 自动创建.c文件,不需要编辑器
  2. 路径使用示例/home/user/OpenBLAS-0.3.23,可直接替换
  3. 编译和运行步骤清晰,读者一条条复制即可完成测试

说明 OpenBLAS 已经安装并可正常使用。


7. 总结

  1. 下载 OpenBLAS 源码
  2. 解压并进入源码目录
  3. 编译库文件(可选启用 OpenMP)
  4. 安装到指定目录
  5. 配置环境变量
  6. 编写 C 程序测试 dot 或矩阵乘法

通过这个方法,你可以在用户目录下独立安装 OpenBLAS,无需管理员权限,方便科学计算和深度学习程序调用。

http://www.jsqmd.com/news/716275/

相关文章:

  • Jetson Orin NX到手后,别急着装CUDA!先搞懂SDK Manager刷机流程(避坑指南)
  • 给TMS320F28335的PIE中断配个‘管家’:从原理图到代码的保姆级配置指南
  • 中小企业多层级 RAG 办公知识库系统探讨(一)____风起
  • SAP MIGO批次管理实战:如何用隐式增强自动填充批次特性值(附完整ABAP代码)
  • 【无人机控制】城市无人机混合多速率自适应扰动估计与稳定控制Matlab实现
  • 为什么大模型在理解长文本的时候会出现幻觉,RAG可以解决幻觉问题吗?
  • 从 0 到 1 搭建客服 AI Agent Harness Engineering:意图识别、知识检索与对话管理完整实战
  • 野火STM32H750双W25Q256 Flash实战:CubeMX配置与驱动修改避坑指南
  • 从机械硬盘到SSD:深入聊聊SATA NCQ与NVMe队列的异同与演进
  • 分子级代码注入攻击:原理、危害与软件测试中的对抗策略
  • 3分钟搞定缠论分析:ChanlunX让通达信自动识别中枢与买卖点
  • 别再只当注册中心了!Nacos配置中心实战:从权限开启到YAML动态刷新,一篇搞定
  • 镀金空心光纤的热光学特性
  • 19.AI开发感悟
  • 别再只会改字体了!用FontCreator 14.0从零设计一套自己的英文字体(附赠常用字形模板)
  • 如何突破8位MCU性能瓶颈?GRBL_for_STM32嵌入式系统移植指南
  • vCenter Server改名记:从FQDN、Hostname到PNID,一次搞懂这三个关键标识
  • 3步开启OBS RTSP直播:免费将OBS视频流转换为监控协议
  • 经历分享,发现挖矿木马后,服务器快速备份与重装(云平台)
  • 【限时解禁】VS Code Copilot Next 企业版自动化工作流配置包(含Terraform模块+Prometheus成本看板+SLA保障模板)
  • 别再乱调了!手把手教你用ASS字幕代码精准控制字体、颜色和位置(附常用颜色表)
  • :RAG 入门-面试官问你,RAG 为什么要切块?
  • 用STM32 HAL库外部中断做个智能灯控:按键长按、短按、双击的识别实现
  • 基于卷积神经网络思想的提示词优化:提升Phi-mini-MoE-instruct视觉描述能力
  • Claude code接入OpenRouter免费模型教程!
  • 银行网络工程师核心技能清单
  • 从Navicat 16.3降级到15.0:老版本更香?一份平滑降级与数据迁移的实操指南
  • Burp Suite 入门必看|2026 最新保姆级安装教程 + 基础使用指南,一篇搞定
  • 揭秘2048游戏AI助手:让算法带你轻松突破高分瓶颈
  • Windows系统优化神器Dism++:5个常见问题的高效解决方案