AppImage介绍
1.AppImage 使用通用的软件格式,通过将整个软件打包成AppImage,一个包包含了所有的功能. 并且几乎可以在所有的linux发行版本中使用。事实上,AppImage 并不需要安装。AppImage 是一个压缩的镜像文件,它包含所有运行所需要的依赖和库文件。
你可以把它当成windows系统中的那些免安装的exe文件。
2.下面会列出一些AppImage的特性或者优点
可以运行在各种平台
不需要安装,直接执行
不需要root权限,不需要修改系统文件
便携性:可以在位置执行
App 只读
卸载便利,只需要删除AppImage文件即可
AppImage解决的办法比较简单粗暴。直接带上二进制及其几乎所有的所需依赖,那么就能有效缓解这个问题。问题很简单,因为不管appimage有多么强大,但是你总得现有一个预编译的二进制版本,这个版本不是天上掉下来的,是编译出来的,既然有编译,就肯定有编译环境,就得引用固定版本的API,例如是在ubuntu14.04下编译的C程序,那么一定依赖了ubuntu14.04依赖的一些API,可能来自glibc,可能还包含其他API。如果你在ubuntu14.04跑打包好的appimage,应该是没有问题的。但是如果在fedora26上,可能遇到一些问题,具体原因还不太清楚,可能跟内核还有关系,因为最常见的问题便是内核转储。你不可能在appimage里再打包一个内核。
利用appimage工具对开发好的项目进行打包
1.从官网下载appimagetool-x86_64.Appimage工具,AppRun
2.制作一个AppDir,大致目录结构
AppDir
AppRun
your_app.desktop
your_app.png
usr
bin
your_app
lib
3.desktop文件里面是一些配置文件
比如:
[Desktop Entry]
Name=GCBS
Exec={执行文件}
Icon=GCBS.png
Type=Application
Categories=System
Comment=GCBS utils
Terminal=false
StartupNotify=true
NoDisplay=false
4.执行ARCH=x86_64 ./appimagetool-x86_64.Appimage ./GCBS.AppDir生成appimage文件
5.执行./GCBS.appimage 运行项目