好吧,我发现 Ubuntu 软件中心发布的几乎每个我尝试安装的软件的版本都过于过时。我能想到的唯一解决方案是从官方页面下载最新版本。我在使用 blender 时也遇到了这个问题,设法找到了一个让我手动更新软件包的帖子(一个预先制作的一行代码)。现在我试图安装一个 android 开发环境。我下载了适用于 linux 64 位的 ADT 包,里面是一个 zip 文件夹。我尝试从 GUI 运行可执行文件,但什么也没发生。当我从 shell 运行它时,它给了我一个错误,我相信这与缺少依赖项有关。所以问题是:
如何正确安装未包含在软件管理器软件包中的软件?
正确的意思是我希望它被安装得就像是由包管理器安装的一样...我想要图标,我想要仪表板中的链接,我想要依赖项......
编辑
在有人说之前,是的,我已经跑了
sudo apt-get install eclipse
sudo apt-get update
sudo chmod +x path/to/bin
sudo path/to/bin
编辑
在我看来,“不可能” = “不可接受”。我想在 Ubuntu 上正确安装最新版本。可能吗?这可能很难,但我该怎么做呢?我一直在试图找到这个问题的答案,这似乎是一个没有人会告诉我的行业秘密……
答案1
首先,不同的 Linux 发行版有不同的目标。例如 Gentoo 旨在成为高度可定制的操作系统,而 LXLE Linux 则针对 Windows 难民。
Ubuntu 的目标是成为一个简单易用、外观优雅的发行版。因此,下列人员应使用它。
- 完全的 Linux 菜鸟。
- 那些想要优雅操作系统的人。
- 那些想要一个易于使用且社区庞大的操作系统的人。
- Ubuntu 粉丝。
考虑你的需求Arch Linux
或者Gentoo
对你来说最好。
Ubuntu 存储库以保存陈旧的软件包而闻名,其中一些软件包Anki
太旧以至于不再可用。如果您决定使用 Ubuntu 并拥有最新软件,则有以下选择。
- 将 ppa 存储库添加到您的操作系统其中包含最新软件。请注意,您可能需要对每个单独的软件执行此操作。
- 从源代码构建.再次,您必须对每个软件执行此操作,并手动解决依赖关系。
如何正确安装软件?
如果你决定从源代码构建,那么所有软件开发人员将提供必要依赖项的列表。只需使用apt-get install
命令安装这些软件即可。如果没有,则说明没有依赖关系,或者开发人员太无知,他们的软件也必须被忽略。
太短;请阅读
使用 Arch Linux,没有理由弄乱 Ubuntu 使其表现得像 Arch。这里没有行业秘密,只是不值得。
It's easier to buy an egg than forcing a chicken to lay one.
答案2
对于 Eclipse 来说:
要在 Linux 中使用 ADT(并允许 Eclipse 使用 ADT),您有两种选择:
- 运行 32 位 Ubuntu(呵呵)
- 运行 64 位 Ubuntu 并启用
multiarch
支持(耶!)
如果尚未启用,您可以通过运行以下命令在 Ubuntu 上启用多架构支持:
sudo dpkg --add-architecture i386
完成后,您将需要添加使用 ADT 所需的 32 位库(取决于您使用的 Ubuntu):
# Ubuntu 12.04
apt-get install ia32-libs
# Ubuntu 13.04
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
# Ubuntu 13.10
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1
如果您想从终端访问 SDK 和 ADB,则需要在文件中导出相关路径.bashrc
:
sudo nano .bashrc
# At the end of the file add
PATH=$PATH:$HOME/AndroidSDK:$HOME/AndroidSDK/tools
export PATH
PATH=$PATH:$HOME/AndroidSDK/platform-tools
export PATH
要创建启动器,你可以看看这里。
针对您的一条评论:
我只想说,关于这里正在进行的争论:每个操作系统都有自己的优点和缺点。话虽如此,让我们来寻找答案。
Windows 需要向后兼容(由于 NT 内核和其他原因)。这意味着 Windows 安装更大,但 64 位 Windows 无法运行的东西很少,包括 32 位应用程序,如 Eclipse 和 Android SDK。这也意味着大多数东西都可以开箱即用。
Linux 需要额外的设置,因为基本安装(即使是带有 GUI 的安装)不需要那么多兼容库(在 Windows 中为 .dll)即可运行。这使得安装更小,可以针对特定硬件。这也意味着您可以在较旧/功能较弱的系统上运行 Linux(在我看来,这是 Linux 的真正目标)。问题是附加功能(例如 64 位环境中的 32 位应用程序)需要额外的设置。
只有少数 Linux 发行版(Arch 和 Fedora 就是一个例子)的存储库中包含最新和最好的软件版本。这是因为大多数 Linux 发行版都注重稳定性。我不能代表 Arch 发言,因为我对它没有什么经验。但是,Fedora 本质上是 RHEL(RedHat Linux Enterprise)的测试平台。对于这样的发行版,它与稳定性无关,而是测试什么能在最新的硬件上运行。这可能是一个真正的痛苦,因为最终测试软件(以及驱动程序、库和内核)的是用户。这可能是真正的地狱。如果您认为浪费几个小时尝试让程序运行是一件可怕的事情,想象一下当某些未经测试的东西损坏或崩溃时,恢复整个系统(以及您的源代码、数据和理智)会是怎样。
像 Ubuntu(尤其是 LTS)这样的发行版注重稳定性。它们通常不会在稳定的存储库中包含未经彻底测试的内容。这就是为什么当涉及到最新和最好的东西时,事情进展得有点慢。代价是你会错过一些新功能,但你有一个稳定的系统。
您可以安装它们的不稳定版本(我认为 14.04 是当前针对 Ubuntu 的测试版本),但关于 Fedora 等的说法也适用。这解决了问题的这一部分(我希望)。