tatamiのブログ

プログラミングの気付きとゲーム関連のことを

OSSプロジェクトのLibreOfficeをビルドしてみた

OSS contributionに興味が湧いて色々調べてみた。

それで以前からよく使っていたOfficeスイートのLibreOfficeのビルドまでをちょっとやってみようかなと。


何はともかくLibreOfficewikiを読んでみたところLinuxが一番ビルドしやすいらしい。

まずmacvirtualboxを使ってUbuntu16.04 LTSをインストールした。

www.morinao-freelan.com


使っていたMacがUSキーボードだったのでUSキーボードを入力ソースに追加した(アンダーバーが打てなくて致命的だった)

ubuntu USキーボードを使う設定 | ある意味メモ帳がわり


OSの環境が整ったので libreoffice wiki に沿ってビルド

$ sudo apt-get update
$ sudo apt-get dist-upgrade

ここで

$ sudo apt-get build-dep libreoffice

で依存関係を入れようとしたけどlibreofficeとか無いよって言われた

wikiの依存関係のページを読んで /etc/apt/sources.list に

$ deb-src http://http.debian.net/debian/ precise main

追記して再度依存関係のインストールを試みた

どうやら/etc/apt/sources.list はDebianにおいてパッケージのダウンロード、インストール元を記載しておくファイルらしい

参考:Debianのsources.listの編集方法
でも結局エラー吐いて止まった

どうもこのpreciseはubuntuバージョンのコードネームみたいで、そのUbuntuバージョンに即したもの名前をリストに追加しないとマズかったらしい。 参考:ubuntuリリース情報

先ほどUbuntu16.04LTSにおいて正しくはこれを追記

$ deb-src http://http.debian.net/debian/ xenial main

これでもう一度

$ sudo apt-get update
$ sudo apt-get build-dep libreoffice

無事成功した。

ソースコードをダウンロードする前にgitをダウンロードしておく

$ sudo apt-get install git

んでlibreofficeソースコードを好きなディレクトリでダウンロード

$ git clone git://anongit.freedesktop.org/libreoffice/core

coreディレクトリに移動して

$ cd core/

ビルドの設定を行う

$ sudo ./autogen.sh

これは確か管理者権限でないと実行できなかった。

最後に管理者権限でビルド makeでイケるとwikiには書いてあったがこっちで通った。

check if root - Ask LibreOffice

$ sudo /usr/bin/make -i


ちなみにオプション付けずにmakeしようとすると ”No. You make ME a sandwich.”とか言われた

これは煽られてるんですかね。


無事にビルドが上手くいったところで

$ sudo instdir/program/soffice --writer
$ sudo instdir/program/soffice --calc

これでLibreOfficeを起動出来ました。

初心者はドキュメント関連のコミットからやっていくのが手堅いようで、コードのバグ周りとかのissuesに手を出していくのはまだまだ無理そうという感想。