添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
RuntimeError: Trying to run '/home/StarCraftII/Versions/Base69232/SC2_x64', but it isn't executable.

原因:该文件非可执行文件
解决办法:

chmod +x 你的文件目录/SC2_x64
raise ConnectError("Failed to connect to the SC2 websocket. Is it up?")  
pysc2.lib.remote_controller.ConnectError: Failed to connect to the SC2 websocket. Is it up?
步骤 1:检查环境变量是否设置
echo $SC2PATH ls $SC2PATH/Versions/

确认里面有 Base69232, Base75689 等版本目录

步骤 2:尝试手动运行 SC2
cd $SC2PATH/Versions/Base69232 ./SC2_x64 -listen 127.0.0.1 -port 12345

如果直接崩溃,说明是 glibc、X、权限问题。

问题3 以上指令后,我这边出现报错:

./SC2_x64: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./SC2_x64)`

说明:SC2_x64 可执行文件依赖 GLIBCXX_3.4.21 这个 C++ 标准库版本,但你系统当前的 libstdc++.so.6 太旧了,不支持这个接口版本。

方案一:临时指定新版 libstdc++.so.6

你可以在集群上加载 GCC 模块或自己安装新版 GCC,然后设置 LD_LIBRARY_PATH 指向正确的 libstdc++.so.6

步骤 1:看看系统有没有新版本 GCC

module avail gcc

如果看到类似:

gcc/7.3.0 gcc/9.3.0
module load gcc/9.3.0

然后确认路径:

find $(dirname $(which gcc))/../lib64 -name "libstdc++.so.6"

设为环境变量:

export LD_LIBRARY_PATH=/刚才find的路径/lib64:$LD_LIBRARY_PATH

然后重试运行:

./SC2_x64 -listen 127.0.0.1 -port 12345