【问题标题】:Atom on Raspbian?Raspbian 上的原子?
【发布时间】:2018-03-11 10:54:52
【问题描述】:

非常愚蠢的问题,但我正在尝试在 Raspbian Stretch 上安装 Atom 文本编辑器。是否可以?我听说它是​​在 Electron 上运行的,对 Raspbian 来说速度很慢。我不断收到错误消息:

E: Unable to locate package atom

我正在关注 Debian 的 official instructions。我该如何解决这个问题?

【问题讨论】:

标签: atom-editor raspbian apt


【解决方案1】:

截至今天,您无法安装为 Debian 提供的官方软件包,因为它与硬件平台不匹配。提供的二进制文件用于在 x86 硬件上运行,但 RPi 没有配备 Intel/AMD 处理器,而是配备了 ARM。因此,您很可能需要自己从源代码构建它。

入门

因此,如果您真的想从源代码构建它,您应该注意由 IMHO 实施不佳的构建工具造成的磁盘空间浪费,该工具正在下载大量的 deps 并复制和转译代码,因此您将结束最多 2GB+ 的文件,其中 80% 仅占依赖项。由于我的 RPi 仅适用于 8GB 智能卡,因此我无法满足对磁盘空间的需求,即使我通过手动删除文档、联机帮助页、语言环境、大量过时且大部分未使用的应用程序等来耗尽 Linux。构建还需要一个完整的构建工具链,大量的库开发包,因此对系统的挤奶是有限度的……8GB 磁盘驱动器根本不够用。

最终我尝试将所有文​​件移动到 USB 笔式驱动器。但是该驱动器必须使用能够进行符号链接的文件系统进行格式化。所以你不能使用 vfat 或 FAT32。我没有成功获得使用任一版本的 extfs 格式化的 16GB 记忆棒。 mkfs 在尝试编写其超级块时总是陷入僵局。令人惊讶的是,我什至无法使用 -KILL 杀死 mkfs,但在这种情况下拔掉驱动器确实有帮助。

因此,作为结论:这是我通过的步骤的简短列表,以期使其正常工作,但由于上述内存问题,最后我没有完成。坦率地说,我不再关心了……我宁愿在终端中使用 nano/vi,也不愿使用这个可笑的类似乐高积木的内置软件。我想,关于the latter's acronym,atom 是今天的 emacs 版本。也许你成功了,但我不会......

从源代码构建

灵感来自https://discuss.atom.io/t/atom-on-the-raspberry-pi/33332

安装用于构建原生东西的工具链

sudo apt-get install build-essential git libgnome-keyring-dev fakeroot gconf2 gconf-service libgtk2.0-0 libudev1 libgcrypt20 python rpm libsecret-1-dev xorg-dev

这套工具足以无误地构建核心文件。由于我没有从全新安装的 Raspbian 开始,可能有一些我以前一直在使用的工具,所以在你的情况下,这里可能需要安装更多工具。在构建的早期阶段寻找错误消息,并尝试查看是否找不到某些库或头文件。这主要表明缺少一些名称以-dev 结尾的软件包也需要安装。首先使用apt search <name-of-mentioned-library> 搜索包,然后查找将缺少的库名称与后缀-dev 组合在一起的包。然后通过调用sudo apt-get install <package-name> 以通常的方式安装它。

安装最新的nodejs

Raspbian Stretch 支持 NodeJS 8.11,基本上没问题。使用以下命令安装它及其包管理器npm

sudo apt-get install node-js npm

检查已安装的版本

node -v
npm -v

这应该代表 NodeJs 显示 8.x.x。如果您想升级,请在之后使用n

sudo npm i -g n
sudo n lts

这会将 NodeJS 切换到最新的 LTS 版本,截至目前为 10.x。升级 NodeJS 是可选的,但建议始终使用最新版本的 npm:

sudo npm i -g npm

检查升级是否成功:

node -v
npm -v

调整 npm 的配置并安装一些必要的 dep:

sudo npm config set -g python /usr/bin/python2
sudo npm i -g node-gyp

构建原子

获取来源。一种选择是从其存储库中提取最新代码:

git clone https://github.com/atom/atom.git

这将创建包含所有源文件的子文件夹atom。您可能想要下载最新版本的源代码。但是本教程是使用从 Github 获取的源代码制作的。因此,请确保有一个名为 atom 的子文件夹包含与上面获取的源类似的源。

是时候启动野兽了:

cd atom
./script/build

这个过程需要一段时间。在我的案例中,由于一遍又一遍地占用所有磁盘空间,这是罪魁祸首。

每当脚本因错误而失败时,请尝试分析错误,查找原因,修复它,然后通过再次重复上面的最后一个命令来启动脚本。如果您不删除子文件夹atom 之间的任何文件,则构建脚本会继续执行它之前成功通过的构建原子的步骤。

安装原子

根据在脚本最终成功完成之前链接的原始教程。然后是时候安装了:

./script/grunt install

我猜这导致atom 可以作为 CLI 的命令使用。所以,试试看。如果一切正常,您终于可以删除子文件夹 atom 中的文件浪费了。

如果这对您的情况有效,请随时报告。

【讨论】:

  • 我刚刚尝试过,成功安装模块后出现错误。错误:不支持拱臂;必须是以下之一: ia32, x64 at packager (/home/pi/atom/script/node_modules/electron-packager/index.js:193:40) 在 Promise (/home/pi/atom/script/lib/package- application.js:139:5) at new Promise (:null:null) at runPackager (/home/pi/atom/script/lib/package-application.js:138:10) at module.exports (/ home/pi/atom/script/lib/package-application.js:17:10)
【解决方案2】:

我记得 Atom 运行 64 位架构;需要最新的树莓派。

【讨论】:

    【解决方案3】:

    运行以下

    wget https://atom.io/download/deb && dpkg -i deb
    

    【讨论】:

    • 否决,因为此命令尝试安装 amd64 包。树莓派需要 armhf 架构。并且需要“sudo”。
    • 不值得投反对票。你应该寻求帮助,并且你需要一个不同的架构,然后也许有人会帮助你......
    • 所提供的方法没有为关于在绝对不处理 amd64 可执行文件的 Raspberry Pi 上安装 Atom 文本编辑器的初始主题提供任何解决方案。使用的链接仅提供 amd64 包。通过参考要求链接站点的社区添加另一个架构的假设选项来反对投票,现在不会改变这一事实。它只是将问题转移到另一个社区。​​span>
    猜你喜欢
    • 2018-02-12
    • 2016-11-03
    • 2018-08-18
    • 1970-01-01
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    • 2014-03-17
    • 2020-07-30
    相关资源
    最近更新 更多