- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在开发一个我想发布到许多发行版的应用程序。到目前为止,我一次在一个发行版上完成了所有测试(在同一个发行版上编译和运行)。但是当我从我的主计算机 (Arch Linux) 上的编译中获取输出的 AppImage,并尝试在虚拟机 (Ubuntu 20.04) 中运行它时,它给我以下错误:
gabriel@gabriel-VirtualBox:~/Downloads$ ./Neptune.Installer-x86_64.AppImage ./Neptune.Installer-x86_64.AppImage:/lib/x86_64-linux-gnu/libc.so.6:找不到版本“GLIBC_2.34”(./Neptune.Installer-x86_64.AppImage 需要)
对此有哪些可能的解决方案?我考虑过静态链接库,但我不确定这是否会导致许可问题,因为我的程序不是开源的。除此之外,我可能会考虑简单地在一个非常旧的发行版(如 Ubuntu 12 或其他发行版)上编译我的程序,但我不知道这对其他发行版的影响如何(例如,我的程序是否仍能在旧版本上运行Fedora 的?)
这可能是一个复杂的问题,但我只想知道解决此问题的最佳方法是什么。换图书馆?静态链接?在旧发行版上编译?让我知道你的想法。
最佳答案
I've considered statically linking the library, but I'm unsure if that might cause licensing issues,
是的。
very old distribution such as Ubuntu 12 or something, but I won't know how well that carries over to other distros
它没有(alpine linux)。如果您编译软件,则必须使用编译它所针对的一组库来运行它。即使您在“非常旧的发行版”上编译,也可能会有更改。
publish to many distributions
选择要支持的发行版列表和这些发行版的版本。告诉用户您将支持这些分发版本。 (https://partner.steamgames.com/doc/store/application/platforms -> Steam 仅正式支持运行 Ubuntu 12.04 LTS 或更新版本的 Ubuntu..
)。
分别针对分发+版本的每个组合进行编译,并针对每个此类分发版本单独分发您的软件。为了方便用户,使用您的软件为特定的分发包管理器创建和共享包存储库。在 https://www.zabbix.com/download只有这么多的组合可供选择。对 Docker 虚拟化环境中的 CI/CD 感兴趣。我喜欢 gitlab。
或者使用所有依赖的共享库分发您的应用程序。将它们与操作系统捆绑在一起,并以 docker 镜像或 qemu/virtualbox 虚拟镜像的形式分发。或者仅使用共享库文件分发,并使用 LD_PRELOAD
的包装器。就像 Steam 一样。在您的系统上安装 Steam,然后在 ~/.steam/steam/ubuntu12_64
中查看会发生什么。
并雇用一个层来解决许可问题。
关于c - 在不同发行版上执行 AppImage 时找不到 GLIBC 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71686498/
这是一个管理和寻找 AppImage 应用的有趣的 GUI 前端。让我们来了解一下它! 我们有很多关于 AppImage 的历史和制作它 的信息。如果你是 Linux 的新手,你也应该
我的构建系统使用介子,将我的应用程序需要的一些文件放在 AppDir/usr/share/myapp/resources 下的 AppDir 上。应用程序在运行时需要读取和写入这些文件。当我查看这些文
我的构建系统使用介子,将我的应用程序需要的一些文件放在 AppDir/usr/share/myapp/resources 下的 AppDir 上。应用程序在运行时需要读取和写入这些文件。当我查看这些文
我正在创建一个 AppImage,遵循 Creating AppImages在项目维基中。我应该创建一个 AppRun 文件,但我没有看到有关该文件格式或如何创建它的任何文档。我的项目是一个 Pyth
我正在尝试使用 JS 从浏览器的拖放中读取 appimage,然后使用 node.js FS 模块将其保存在其他地方,我尝试了所有浏览器文件阅读器选项,但它们似乎都不起作用。 (他们都给了我一个与原始
我有一个 Electron app ,我必须发布,我遇到了 Linux 的问题发行版。对于 Linux,我决定构建一个 .AppImage分发文件,问题是构建的 AppImage 在构建应用程序的主机
我已经用 Electron 制作了自己的应用程序,但在启动外部 python 脚本时,我遇到了生产版本的问题。 当我在开发环境中运行代码时,我有类似的东西: const out = spawnSync
我是 Linux 的完全新手,并试图打开一个名为 Magick 的 AppImage,它是一个 Imagemagick 应用程序。 我尝试右键单击 AppImage 并选中“将文件作为可执行文件运行”
场景:Ubuntu 18LTS 中 Kate 的当前版本指向他们的自定义版本(似乎不支持正则表达式搜索功能)。 bin 是:/usr/bin/kate。 所需的解决方案:运行 Kate AppImag
已结束。此问题不符合 Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 a specific programming problem, a software a
我目前正在开发一个我想发布到许多发行版的应用程序。到目前为止,我一次在一个发行版上完成了所有测试(在同一个发行版上编译和运行)。但是当我从我的主计算机 (Arch Linux) 上的编译中获取输出的
我在 Electron + Create React App 堆栈上。我正在使用 Electron Updater ( https://github.com/develar/electron-upda
我已经使用下面提到的 AppImage 安装了 nvim curl -LO https://github.com/neovim/neovim/releases/download/nightly/nvi
我正在遵循 AppImage GitHub 手册上的手动打包指南。对于 AppRun,我使用 https://github.com/AppImage/AppImageKit/releases 中的 A
Electron-builder 版本:20.38.5 目标:Windows ia32 和 x64 我正在尝试将项目推送到私有(private)存储库中的 GitHub 版本。主要目标是 Win ia
我是 Electron 的新手,我正在尝试导出我在游戏引擎中制作的游戏。我习惯使用 appImage,因为引擎没有本地导出到 Linux 选项。 我不知道我是否正确,我有点将责任归咎于与图标和/或“符
我是一名优秀的程序员,十分优秀!