天下熙熙,皆为利来;天下攘攘,皆为利往。司马迁,《史记》
Intro
Hugo 和 Go 语言在树莓派的 ARM 架构下差点没把我折腾个半死 ,这里写下折腾后的解决方案。
Pi with Go
由于 Hugo 在 ARMV7 平台下没有 extend 版本,所以需要用 Go 语言现场编译,但是树莓派的指令只能装到 1.11 版本,有些 Hugo 的插件需要高版本 Go, 于是开启了折腾之旅。
cd $HOME FileName='go1.13.6.linux-armv6l.tar.gz' wget https://dl.google.com/go/$FileName sudo tar -C /usr/local -xvf $FileName cat >> ~/.bashrc << 'EOF' export GOPATH=$HOME/go export PATH=/usr/local/go/bin:$PATH:$GOPATH/bin EOF source ~/.bashrc reboot
日后如果想要安装其他版本,直接去官网查看最新版本更改 Filename 然后保存为 shell 脚本即可安装,nano .bashrc 可以保证 Go 语言在环境变量里。以上方法是最简单的了,再也不敢随便自己尝试编译了,内存根本不够不说还非常耗时。
Pi with Hugo
在编译 Hugo 之前有几个问题:一个是可能造成 CPU 阻塞需要把线程栈调制 1 MB,还有就是内存可能不够,需要开启虚拟内存。
ulimit -s 1024 /etc/dphys-swapfile CONF_SWAPSIZE=2048 /etc/init.d/dphys-swapfile restart
这样就直接调制 2048 最大虚拟内存了,最后直接开始编译:
mkdir $HOME/src cd $HOME/src git clone https://github.com/gohugoio/hugo.git cd hugo go install --tags extended
耐心等待即可,extend 版本安装完毕后就再也不用担心 sass 文件无法编译的问题了。
Others
在 VNC 下有时候无法编辑文件,需要我们改成 root 用户直接登录修改。
sudo passwd root sudo passwd --unlock root su root
Reference