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

Lua环境下lua-http依赖安装遇SSL相关问题求助

解决Windows下Luarocks安装cqueues/luaossl找不到OpenSSL库的问题

问题根源

Windows下预编译OpenSSL的库文件路径与luarocks默认搜索路径不匹配,或使用了错误的OpenSSL安装包(如源码包而非预编译版)。


解决方案

1. 安装正确的OpenSSL预编译包

  • 卸载现有OpenSSL,下载Win64/Win32预编译安装包(不要源码压缩包)。
  • 安装时选择「Copy OpenSSL DLLs to the Windows system directory」,或记住默认路径C:\Program Files\OpenSSL-Win64。
  • 检查安装目录下的lib子目录,确认存在libcrypto.lib(VC编译版)或libcrypto.a(MinGW编译版)。

2. 修正luarocks安装命令参数

方法一:直接指定CRYPTO_DIR

luarocks会自动从该目录的include和lib子目录查找文件,命令更简洁:

luarocks install cqueues CRYPTO_DIR="C:\Program Files\OpenSSL-Win64"

方法二:手动指定完整路径

如果OpenSSL库文件在子目录(如lib\VC或lib\MinGW),需明确指定:

# VC编译版示例
luarocks install cqueues CRYPTO_INCDIR="C:\Program Files\OpenSSL-Win64\include" CRYPTO_LIBDIR="C:\Program Files\OpenSSL-Win64\lib\VC"

提示:若用MinGW环境(如Lua for Windows自带的luarocks),需将CRYPTO_LIBDIR指向C:\Program Files\OpenSSL-Win64\lib\MinGW。

3. 配置环境变量

  • 将OpenSSL的bin目录(C:\Program Files\OpenSSL-Win64\bin)添加到系统PATH。
  • 重启命令行窗口后再执行安装,确保luarocks能识别OpenSSL动态链接库。

4. 尝试预编译rocks包

若源码编译失败,可使用第三方预编译包:

# 安装cqueues预编译版
luarocks install cqueues --from=https://luarocks.org/manifests/rocks-moonscript-org
# 安装luaossl预编译版
luarocks install luaossl --from=https://luarocks.org/manifests/rocks-moonscript-org

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 05:08:14