返回顶部

松鼠窝

Ubuntu中octopress安装

2015年01月25日

这是一篇按官方说明进行安装的说明,但后记中记录了如何使用Ubuntu自己的包管理系统中包含的ruby版本进行安装的方法。

安装条件

要有git,要有ruby1.9.3版,要有rvm或者rbenv。

不过rvm似乎只是用来安装ruby,所以不清楚如果已经安装配置了ruby1.9.3版,是不是就不用它了呢?

RVM的安装方法参考Octopress的说明是这样的:

在命令行下执行:

  • list element with functor item
curl -L https://get.rvm.io | bash -s stable --ruby  <!-- more -->
  • list element with functor item
  • list element with functor item

安装过程中会自动安装ruby2.1.2:

ruby-2.1.2 - #validate archive
ruby-2.1.2 - #extract
……
$ ruby --version
ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-linux]

所以应该需要:

rvm install 1.9.3
rvm use 1.9.3
rvm rubygems latest 

最后会告诉你:

  * To start using RVM you need to run `source /home/pangyi/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.

还要装一下rake,需要使用gem:

sudo gem install rake

Octopress的安装

首先:

git clone git://github.com/imathis/octopress.git octopress
cd octopress 

然后安装主题:

sudo gem install bundler
bundle install
rake install

在UBUNTU中需要加sudo。如果rake没装,请看上面。

后记——使用UBUNTU自带版本安装

UBUNTU自带版本为:

$ ruby -v
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

为了迁就octoeditor等VIM插件(从gvim启动时,无法用rvm use指定ruby版本),就需要以这个版本来安装了。安装时报了一些错误:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ bundle install
Fetching gem metadata from https://rubygems.org/.......
Using rake 10.3.2

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb 
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
	from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
	from extconf.rb:1:in `<main>'


Gem files will remain installed in /tmp/bundler20141115-3546-1wbtw8p/RedCloth-4.2.9/gems/RedCloth-4.2.9 for inspection.
Results logged to /tmp/bundler20141115-3546-1wbtw8p/RedCloth-4.2.9/gems/RedCloth-4.2.9/ext/redcloth_scan/gem_make.out
An error occurred while installing RedCloth (4.2.9), and Bundler cannot
continue.
Make sure that `gem install RedCloth -v '4.2.9'` succeeds before bundling.

查了一下,问题是一些相关的包,如dev包没有安装,最简单也比较土的办法是安装完全版本:

sudo apt-get install ruby1.9.1-full

之后bundle install就没有报错了。

由于是重新安装,只要做bundle install就行了,不需要重新安装主题。此时rake的相关操作都可以正常执行,在vim中使用octoeditor插件时就不会出问题了。

返回顶部