适用于 Linux 的便携式应用程序?

And*_*ula 12 linux portable

这个问题让我思考 - 有可用于 Linux 的便携式应用程序吗?我知道很多简单的工具都可以独立运行,但是我会遇到常见 Linux 发行版的安全限制吗?

无论如何,考虑到大多数默认 Linux 系统上工具等的可用性,是否有必要这样做?

编辑:澄清一下,我正在寻找可以在现有 Linux 系统上运行的应用程序 - 如果不需要,我不想随身携带整个操作系统。

Ale*_*tov 7

大多数使用 GNU 工具链的应用程序都可以像这样从源代码构建:

./configure --prefix=[directory which will contain your 'portable' application]
make
make install
Run Code Online (Sandbox Code Playgroud)

然后移动到具有兼容库的不同计算机。

Linux 没有注册表,许多应用程序通常不需要“安装”,它们可以从源代码构建,因此制作“适用于 Linux 的 My Specialy Portable © 应用程序”毫无意义,所以我认为甚至没有人关心这一点。

只要看看这个问题最上面的答案,你就会明白在注册和具有许可证管理的专有应用程序的世界中使应用程序“便携”“有用”的愚蠢概念。


Mic*_*and 5

./configure技巧适用于某些应用程序。然而,许多应用程序将前缀编码到自身中,然后在运行时使用它来查找支持文件。他们还需要能够加载他们的共享库文件(尽管LD_LIBRARY_PATH可以设置环境变量来帮助实现这一点)。然而,这样做的结果是便携应用程序可能不是很便携——它们将依赖于指定的前缀。这可能适用于许多地方(大多数现代发行版在 上安装媒体/media/DISKNAME),但它确实阻止了应用程序真正的可移植性和位置无关性。

因此,最终的答案是,制作可移植的 Linux 应用程序虽然并非不可能,但充满了微妙之处。我怀疑这是为什么它不像在 Windows 上那样完成的一个主要因素。此外,公共计算设施(其中大部分可移植应用程序的好处出现)通常不运行 Linux。一个值得注意的例外是大学实验室,但您通常可以在那里的主目录中安装一些额外的软件。


qua*_*ark 1

Linux for Travelers跟踪了这个主题,并提供了一些技巧来解决目前还没有针对 Linux 的便携式应用程序安装这一事实 - 可能是出于您提到的原因:如果您拥有安装权限,那么添加新应用程序就足够容易了不需要使用您的便携式设备。