报错 /bin/sh: .../scrcpy-server: cannot execute binary file

/bin/sh: /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server: cannot execute binary file

翻译: /bin/sh:/Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/spreadcpy/spreadcpy-server:无法执行二进制文件

这个错误 /bin/sh: .../scrcpy-server: cannot execute binary file 通常表示你尝试运行的二进制文件(scrcpy-server)与当前系统的架构不兼容,或者文件损坏/权限不足。以下是解决方案:


1. 检查文件权限

确保 scrcpy-server 有可执行权限:

bash 复制代码
chmod +x /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server

2. 确认文件架构是否匹配

Mac 现在分为 Intel (x86_64)Apple Silicon (arm64) 两种 CPU 架构,而 scrcpy-server 可能只支持其中一种。

检查文件架构

bash 复制代码
file /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server
  • 如果输出 x86_64(Intel),但你的 Mac 是 M1/M2(arm64),则无法直接运行。
  • 如果输出 arm64,但你的 Mac 是 Intel,也无法运行。

解决方案

  • 如果是架构问题
    • 下载对应架构的 scrcpy-server(如 mac-arm64 版本)。

    • 或使用 Rosetta 2 运行(仅适用于 Apple Silicon):

      bash 复制代码
      arch -x86_64 /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server

3. 检查文件是否损坏

如果文件损坏,重新下载 scrcpy-server

bash 复制代码
wget https://github.com/Genymobile/scrcpy/releases/download/v2.4/scrcpy-server-v2.4 -O /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server
chmod +x /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server

4. 检查是否缺少依赖

scrcpy-server 可能需要 adb(Android Debug Bridge)才能运行。确保已安装:

bash 复制代码
# 检查 adb 是否安装
adb --version

# 如果没有,安装(Mac 使用 Homebrew)
brew install android-platform-tools

5. 检查文件路径是否正确

确保路径 /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server 确实存在:

bash 复制代码
ls -l /Users/admin/Downloads/escrcpy/electron/resources/extra/mac-x64/scrcpy/scrcpy-server

如果路径错误,修正路径或重新放置文件。


6. 尝试直接运行 scrcpy

如果 scrcpy-serverscrcpy 的一部分,可以尝试直接运行 scrcpy

bash 复制代码
scrcpy

如果未安装,使用 Homebrew 安装:

bash 复制代码
brew install scrcpy

总结

  1. 检查权限chmod +x
  2. 检查架构file 命令
  3. 重新下载 → 确保文件完整
  4. 检查依赖adb 是否安装
  5. 检查路径 → 确保文件存在
  6. 直接运行 scrcpy → 避免手动调用 scrcpy-server

如果问题仍然存在,请提供:

  • 你的 Mac 型号(Intel/Apple Silicon)
  • file /path/to/scrcpy-server 的输出
  • uname -m 的输出(查看系统架构)
相关推荐
weixin_4316004437 分钟前
做 Agent 会用到的 Node API(3):异步与流
前端·学习·ai·agent·ai编程
程序员黑豆42 分钟前
鸿蒙应用开发之生命周期方法完全指南
前端·harmonyos
一点一木42 分钟前
第 23 届 ChinaJoy 刚结束,我把 965 个展台做成了 3D 云展馆
前端·人工智能
wordbaby1 小时前
前端请求缓存写了,同一个接口为什么还是打了十几次?
前端·promise
不可能掉发1 小时前
Env Guard:让浏览器一眼分清生产、测试和开发环境
前端·javascript·chrome·测试工具·html·开源软件·个人开发
饼干哥哥1 小时前
Codex 必改的8 个基础配置
前端·人工智能·后端
ClouGence1 小时前
AI Agent 能写测试、跑流程,为什么回归测试还不能完全交给 AI?
前端·测试
码云之上1 小时前
Context Engineering:让 Agent 在当前步骤看到正确的事实
前端·人工智能·前端工程化
嘟嘟07171 小时前
从手写 HashRouter 到 React Router:逐层拆解 SPA 前端路由的完整实现
前端·javascript
我叫蒙奇2 小时前
JS中的隐式类型转换
前端