惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
爱范儿
爱范儿
T
The Exploit Database - CXSecurity.com
量子位
T
Tailwind CSS Blog
T
Threatpost
The GitHub Blog
The GitHub Blog
AWS News Blog
AWS News Blog
云风的 BLOG
云风的 BLOG
K
Kaspersky official blog
P
Proofpoint News Feed
博客园 - 司徒正美
L
LangChain Blog
T
Threat Research - Cisco Blogs
C
CERT Recently Published Vulnerability Notes
罗磊的独立博客
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 叶小钗
S
Secure Thoughts
The Last Watchdog
The Last Watchdog
Spread Privacy
Spread Privacy
H
Hacker News: Front Page
T
Troy Hunt's Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Google DeepMind News
Google DeepMind News
W
WeLiveSecurity
A
Arctic Wolf
Apple Machine Learning Research
Apple Machine Learning Research
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
P
Proofpoint News Feed
T
Tor Project blog
T
The Blog of Author Tim Ferriss
I
Intezer
P
Privacy & Cybersecurity Law Blog
美团技术团队
N
Netflix TechBlog - Medium
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Vulnerabilities – Threatpost
Application and Cybersecurity Blog
Application and Cybersecurity Blog
G
Google Developers Blog
Attack and Defense Labs
Attack and Defense Labs
T
Tenable Blog
月光博客
月光博客
Stack Overflow Blog
Stack Overflow Blog
J
Java Code Geeks
腾讯CDC
Microsoft Security Blog
Microsoft Security Blog
A
About on SuperTechFans
Last Week in AI
Last Week in AI

Deep Router

解决Codex Desktop高频TRACE日志写入logs_2.sqlite问题 | Deep Router Hermes Agent 优化:解决GLM-5.2模型429(1305 overloaded) | Deep Router 解决微信图片加载缓慢:从DNS到OSPF路由的问题排查 | Deep Router Windows Alma 太卡? 我有特殊的使用技巧 | Deep Router 使用Pipedream同步RSS至Twitter(X.com) | Deep Router 使用Pipedream同步RSS至BlueSky | Deep Router Dae搭配AdGuard Home使用指南 | Deep Router OpenWRT IPv6防火墙规则:如何放行客户端地址及端口 | Deep Router 国内外DNS服务器推荐列表 | Deep Router ImmoralWRT软件源分享 | Deep Router NieR Automata Ver 1.1a | Deep Router 网关互指情况下,旁路由是否需要开启upnp? | Deep Router 【Horace And Pete】百年酒馆 第一季 1080P 阿里云 | Deep Router
在OpenWRT上使用Neovim | Deep Router
Yawatasensei · 2024-08-26 · via Deep Router

// 自己需要通过SSH对家里的网络进行调试,对各种配置文件进行编辑,需要一个舒服的编辑器。我在本地环境中使用的是NeoVim,而在OpenWRT的系统软件仓库中,没有相关的IPK,所以将我自己在OpenWRT上进行编译安装NeoVim的过程以及遇到的坑整理出来。

$ git log --oneline --stat

📁 category: 技术分享📅 updated: 2026-06-29🏷️ tags: Openwrt, Neovim, 旁路由

🖥️

因为自己经常需要通过SSH对家里的网络进行调试,包括主路由的配置、旁路由(旁路网关)的配置、OpenClash、Adguard home、MosDNS等等,频繁的需要用到一个舒服的编辑器对jsonyaml以及xml等配置文件或结构化数据文件进行修改。我在本地环境中使用较多的是NeoVim,之前也分享过LazyVim的文章。而在OpenWRT的系统软件仓库中,目前还没有这个软件的ipk,所以今天就将我自己在OpenWRT上进行编译安装NeoVim的过程以及遇到的坑整理出来。

📝 Neovim安装配置

开始之前

为避免编译安装过程中产生不可控的问题,我在这篇教程中用一个全新虚拟机环境。固件来源于ImmortalWrt Firmware,Generic x86/64架构,版本号为23.05.3,内核版本为5.15.162,没有额外添加任何预安装软件包,与默认提供的软件包一致,可用空间尽量大,这次操作我的实际使用空间大概在1.2G左右,但是在安装完成之后可以进行移除。

同时,建议在开始下面的操作之前,如果你是已经在使用的OpenWRT系统,建议做好备份,如果是虚拟机系统,建议添加检查点或备份点。

Neovim编译安装流程开始

以下内容是在OpenWRT内编译安装Neovim的全部流程。如果不想看流程,可以直接看总结

首先通过opkg进行软件仓库源更新。

返回结果为Signature check passed. 且没有报错继续下一步

由于我们需要通过git方式克隆neovim在github上的仓库,所以需要这两个软件包,其中git-http用于在SSL情况下使用git,非SSL模式Github不支持克隆拉取仓库。

期间,包括依赖在内,总共安装的软件包括:git, git-http, zlib, libcurl4, libnghttp2-14

通过git clone进行neovim的仓库拉取,并尝试执行make

返回错误结果

原因是我们没有make的软件包,通过opkg进行安装,并再次尝试make

返回错误结果:

提示不存在cmake。Openwrt并不提供cmake的安装文件,但是我们可以通过python-pip的方式进行曲线安装,目前主流的Python版本为Python3。

之后再进行make时提示:

意思时没有找到c编译器,我们可以安装gcc解决

这次编译了很长时间,直到在安装luajit时进行报错:

我们直接用opkg安装

然后继续尝试执行make,这次报错变了:

提示我们没有ld命令没有ldl这个参数的选项。 通过查看openwrt的文档可以发现,这些库中的函数实际上已经直接包含在musl libc中。然而,由于某些工具尝试显式链接这些库,你可能会遇到“No Such file or directory”的错误。为了解决这个问题,只需为它们创建存根库即可。

使用Vi建立一个sh文件vi run.sh,并在文件中输入以下内容:

然后继续尝试make CMAKE_BUILD_TYPE=RelWithDebInfo ,这次报错内容变更为:

提示为没有install命令,这个的解决方法为:

报错内容变更为:

提示找不到GettextGettext目前没有安装包的一类的快捷安装方法,我们需要通过编译进行安装

然后继续尝试执行neovim的编译,返回错误

我们通过创建存根库绕过:

到这里,基本上编译已经完成,我们可以进行安装

二进制的执行文件在/usr/local/bin下,我们可以直接移动到/usr/bin或者软连接过去。之后如果想安装astronvim或者lazyvim可以直接进行执行相关安装命令。

🤗 OpenWRT编译安装Neovim精简版

OPKG安装依赖

PIP安装依赖CMAKE

编译安装Gettext

创建存根库

拉取Neovim库并编译安装

完成后nvim二进制文件位于/usr/local/bin

直接下载Neovim二进制文件

如果你不想自己进行编译,恰巧你也是X86_64架构的OpenWRT,那么也可以直接下载我编译好的二进制文件进行使用。

init.vim/neovim.7z at main · moreoronce/init.vim (github.com)

📎 参考文章

💡

有关OpenWRT安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~