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

在Termux中运行.go文件失败报错该如何解决?

问题原因

该报错由Termux运行环境与Go编译规则不匹配导致,常见触发原因如下:

  • 重装后的Termux默认给临时目录/data/data/com.termux/files/usr/tmp/加了禁止执行的权限,go run命令会先将编译好的二进制文件写入临时目录再执行,没有执行权限就会触发找不到文件的报错
  • 当前安装的Go是通用Linux架构版本,不是Termux官方源适配的版本,编译出的二进制动态链接路径和Termux的文件系统结构不兼容,系统无法正确加载执行文件
解决方法

按优先级从高到低尝试即可:

  1. 卸载现有Go,安装Termux官方适配版本
    执行以下命令:
pkg uninstall golang -y
pkg update && pkg upgrade -y
pkg install golang -y

安装完成后重新执行go run main.go测试即可。

  1. 更换Go临时目录到有执行权限的路径
    如果安装官方版本后仍报错,是临时目录权限限制未放行,执行以下命令临时生效:
export GOTMPDIR=~/gotmp
mkdir -p $GOTMPDIR

需要永久生效的话,把上面两行命令添加到~/.bashrc文件末尾,执行source ~/.bashrc后再次测试即可。

  1. 手动编译后执行
    如果不想修改环境配置,也可以直接将二进制编译到当前目录再执行,绕过临时目录限制:
go build -o main main.go
./main

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 16:57:03