温馨提示×

centos如何制作appimage文件

小樊
33
2026-09-11 20:33:10
栏目: 智能运维

CentOS 上制作 AppImage 文件,核心思路是:
把你的程序 + 依赖库 + 一个 AppRun 启动脚本 + 桌面文件,打包成一个可执行的 .AppImage 文件

下面给你一个从零开始、可在 CentOS 7/8 上操作的完整流程


一、准备环境(CentOS)

1. 安装基础工具

sudo yum install -y git wget fuse

CentOS 8 用 dnf 代替 yum

如果是 CentOS 8+ / Stream,还需要:

sudo dnf install -y fuse3

二、下载 AppImage 工具

方法 1(推荐):linuxdeploy

wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
chmod +x linuxdeploy-x86_64.AppImage

方法 2(旧方式):AppImageKit

git clone https://github.com/AppImage/AppImageKit.git
cd AppImageKit
./build.sh

三、准备你的程序目录

假设你的程序叫 myapp

mkdir -p myapp.AppDir/usr/bin
cp myapp myapp.AppDir/usr/bin/

目录结构示例:

myapp.AppDir/
├── AppRun
├── myapp.desktop
├── myapp.png
└── usr/
    └── bin/
        └── myapp

四、创建必要文件

1. AppRun(启动脚本)

nano myapp.AppDir/AppRun

内容:

#!/bin/bash
HERE="$(dirname "$(readlink -f "${0}")")"
exec "$HERE/usr/bin/myapp" "$@"

赋予执行权限:

chmod +x myapp.AppDir/AppRun

2. 桌面文件

nano myapp.AppDir/myapp.desktop

内容:

[Desktop Entry]
Name=MyApp
Exec=myapp
Icon=myapp
Type=Application
Categories=Utility;

3. 图标(可选)

cp myapp.png myapp.AppDir/

五、生成 AppImage

使用 linuxdeploy

./linuxdeploy-x86_64.AppImage \
  --appdir myapp.AppDir \
  --output appimage

成功后你会得到:

MyApp-x86_64.AppImage

六、测试 AppImage

chmod +x MyApp-x86_64.AppImage
./MyApp-x86_64.AppImage

七、常见问题(CentOS 特有)

1. CentOS 7 老库问题

  • 建议在 CentOS 7 上打包,保证兼容性
  • 不要在 CentOS 9 上打低版本兼容包

2. 缺少依赖

ldd myapp

用:

linuxdeploy --appdir myapp.AppDir --deploy-deps-only /path/to/lib

3. FUSE 报错

./xxx.AppImage --appimage-extract

然后运行 squashfs-root/AppRun


八、总结一句话

CentOS 制作 AppImage = 准备 AppDir + AppRun + desktop + linuxdeploy 打包


如果你是 Qt / GTK / Python / Go / Electron 程序,我可以给你对应专属打包示例

0