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

树莓派1B执行npm install serialport报错:Python语法错误

树莓派1B安装serialport时Python版本不兼容问题解决

问题背景

在树莓派1B环境执行npm install serialport时触发Python语法错误:系统默认Python版本为3.9.2,但安装@serialport/bindings@9.2.8时,prebuild-install未找到适配armv6架构的预编译二进制包,触发node-gyp rebuild操作。而当前配套的node-gyp v3.8.0仅支持Python2语法,与Python3.9.2不兼容,抛出SyntaxError。

关键报错信息

alfred@alfred:~/AccentaG4/src/mpu/server $ python --version
Python 3.9.2

> @serialport/bindings@9.2.8 install /home/alfred/AccentaG4/src/mpu/server/node_modules/@serialport/bindings
> prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild

prebuild-install warn install No prebuilt binaries found (target=11.15.0 runtime=node arch=arm libc= platform=linux)
gyp ERR! configure error
gyp ERR! stack Error: Command failed: /usr/bin/python -c import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack   File "<string>", line 1
gyp ERR! stack     import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack                       ^
gyp ERR! stack SyntaxError: invalid syntax
gyp ERR! System Linux 6.1.21+
gyp ERR! node -v v11.15.0
gyp ERR! node-gyp -v v3.8.0

解决方案

方案1:升级node-gyp并配置Python3

  1. 全局更新node-gyp到支持Python3的版本:
    npm install -g node-gyp@latest
    
  2. 配置npm使用Python3:
    npm config set python python3
    
  3. 重新执行安装命令:
    npm install serialport
    

方案2:安装适配armv6的serialport版本

@serialport/bindings@9.2.8对armv6架构支持不足,可尝试安装更新且兼容的serialport版本:

npm install serialport@10.4.0

该版本对armv6架构的预编译支持更完善,同时兼容Python3。

方案3:临时安装Python2(应急方案)

若上述方案无法执行,可临时安装Python2.7并指定npm使用:

  1. 安装Python2.7:
    sudo apt-get update && sudo apt-get install python2.7
    
  2. 配置npm默认使用Python2:
    npm config set python python2.7
    
  3. 重新安装serialport:
    npm install serialport
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 21:54:53