You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派4使用luarocks构建cqueues时gcc查找库目录错误如何修复

树莓派Raspbian/Pi OS下luarocks库搜索路径通用修复方案

问题根源

luarocks默认配置的系统库搜索路径仅包含x86架构的多架构目录/usr/lib/x86_64-linux-gnu,未适配ARM架构Pi OS的默认库路径/usr/lib/arm-linux-gnueabihf,导致所有需要查找系统依赖库的rock包都会出现找不到库的报错。

通用解决方案(全局生效,无需每次安装传参)

步骤1:先确认基础依赖已安装

libcrypto属于openssl开发包,先安装对应依赖:

sudo apt update && sudo apt install libssl-dev

步骤2:选择以下任意一种全局配置方式即可

方式一:修改luarocks配置文件(推荐,针对性更强)

  1. 查看你使用的Lua版本对应的luarocks配置文件路径,通常为:
    • 系统级全局生效:/etc/luarocks/config-<Lua版本>.lua(例如config-5.4.lua)
    • 当前用户生效:~/.luarocks/config-<Lua版本>.lua
  2. 在配置文件中添加以下内容:
-- 添加ARM架构系统库搜索路径
external_lib_dirs = {
    "/usr/lib/arm-linux-gnueabihf",
    "/usr/local/lib",
    "/usr/lib"
}
-- 添加对应头文件搜索路径
external_include_dirs = {
    "/usr/include/arm-linux-gnueabihf",
    "/usr/local/include",
    "/usr/include"
}
  1. 保存退出即可,无需重启。

方式二:配置全局环境变量

如果不想修改luarocks配置文件,可以将路径写入shell配置文件永久生效:

  1. 编辑你使用的shell配置文件(例如~/.bashrc、~/.zshrc),添加以下内容:
export LUAROCKS_EXTERNAL_LIBDIR="/usr/lib/arm-linux-gnueabihf"
export LUAROCKS_EXTERNAL_INCDIR="/usr/include/arm-linux-gnueabihf"
  1. 执行source ~/.bashrc(或对应shell配置文件)使配置立即生效。

验证效果

直接执行安装命令即可,无需额外传参:

luarocks install http

该配置对所有需要调用系统依赖的luarocks包都生效,后续安装其他rock包不会再出现找不到ARM架构系统库的问题。

内容的提问来源于stack exchange,提问作者JayabalanAaron

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 15:45:03