我发现在Linux机器上安装软件是非常困难的,因为它是一个普通用户。我在这台机器上没有根权限,所以我不能使用任何包管理器系统。
例如,我试图安装一个简单的IRC客户端,但是从源代码安装所有东西都很麻烦,因为我必须手动下载并安装树上的每个依赖项(irssi->glib->ncurses等等)。等等)。
所以我下载了ircii,这似乎是我能找到的最简约的客户端,它仍然需要一些名为lex的程序,但我找不到。
对于这个麻烦的任务,有什么简单的解决办法吗?为什么人们不直接交付包含我所需要的二进制文件(有点像.exes)?
发布于 2010-08-30 11:28:32
您可能想看看Nix包管理器。它的整个包管理方法不仅非常有趣,而且该网站还声称它在每个Linux发行版上都能工作,并且允许非特权用户使用它安装软件。您可以在http://nixos.org/nix/上找到更多信息以及所有可用包(约2500)的完整列表。
发布于 2010-08-30 14:06:52
您可能会认为,更多的人会记住多用户系统,以及在您的主目录下运行软件是如何被接受的。尽管如此,你还是应该确认你的主人不介意。
如果系统没有从源代码编译的依赖项,而且管理员也不会安装它们,那么最好的选项如下:
发布于 2010-08-30 11:14:56
Any easy solutions for this hassling task? Why don't people just deliver binaries that have all I need included in them (sort of like .exes)?冒着发出咆哮的危险,做这件事的方法是
我假设你正在使用的机器不是你的,否则#1是可以实现的。根据这个假设,如果这是我的机器,我不希望你在任何时候都能安装新的软件包和库,除非我真的信任你,否则我想让你来找我。这就是linux发行版和linux管理应该如何工作的方式。
所以..。为什么人们不提供二进制文件?这很可能是因为linux (库)本质上是更多的模块,而更多的是零碎的。没有一个像win32这样庞大的核心api,开发人员可以保证它会出现在那里。它们必须依赖于它们需要的显式库和这些库的特定版本,以便在编译时和运行时都可用,这样才能成功地分发其软件。这几乎是普遍正确的。AFAIK,Windows除了最简单的依赖于核心Windows库的exes之外,还存在同样的问题--您必须运行一个具有管理员权限的安装程序来修改注册表和安装库。MacOSX是您正在讨论的最著名的3种操作系统中唯一一种涵盖用例的操作系统,因为所有的.app文件都是完全独立的,并且可以安装在用户的$HOME中,并且工作正常。
https://serverfault.com/questions/176035
复制相似问题