23
1 LibreOffice mini Conference 2014 Tokyo/Japan LibreOffice 開発版のビルドの基礎 for Windows おがさわらなるひこ LibreOffice 日本語チーム

The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

Embed Size (px)

DESCRIPTION

In Japanese, LibreOfficeをWindowsでビルドするための超基本を説明しました。もっとよい先行資料(スライド中で紹介しています)があるので、自分で試してみたらこうなったというスライドになってます。

Citation preview

Page 1: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

1LibreOffice mini Conference 2014 Tokyo/Japan

LibreOffice 開発版のビルドの基礎for Windows

おがさわらなるひこLibreOffice 日本語チーム

Page 2: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

2LibreOffice mini Conference 2014 Tokyo/Japan

まずはお断り

私こと、おがさわらなるひこは Windows を常用しておらず、したがって Windows ビルドの経験は至って乏しいです

今回は時間が足りないなどあって実際ビルドしたものを動かすところまで届かず……スミマセン

今回は以下の資料をフォローする形で説明しますTDF Wiki “Windows Build Dependencies”https://wiki.documentfoundation.org/Development/Windows_Build_Dependencies

関西 LibreOffice 勉強会資料 by 八木さん「 LibreOffice を Windows でビルドする」http://www.slideshare.net/tomofumiyagi/libreoffice-buildytmkndshortver

Page 3: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

3LibreOffice mini Conference 2014 Tokyo/Japan

必要な開発ツールの準備など

Page 4: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

4LibreOffice mini Conference 2014 Tokyo/Japan

準備するもの

1.Cygwin

2.GNU Make (LibreOffice patched version)

3.Java SE Development Kit 7 (SE8 でもいけるのかな?)

4.Apache Ant

5.Visual Studio Express 2012 for Windows Desktop

Page 5: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

5LibreOffice mini Conference 2014 Tokyo/Japan

ビルドするバージョンを選ぶ

普通は開発版の最新(今なら 4.3 )あるいは master

でも master はときおりビルドがぶっ壊れるので、ただビルドを試したいだけなら 4.3 が無難かも

もちろんぶっ壊れたビルドを直すのは良い Hack なので、 masterに果敢に挑戦するのもあり

4.3 から VS の IDE でビルドが可能になったらしいBuilding LibreOffice from an IDEhttps://www.youtube.com/watch?v=Xn3CtIrMpIA&hd=1試せてませんスミマセン

Page 6: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

6LibreOffice mini Conference 2014 Tokyo/Japan

用意する OS 、ハードウェア

Windows 7 以降なら 32/64 どっちでも OKだそうです。ぼくは 64bit の Windows7 Home Premium

ハードウェアはいまどきの一般的な PCLibreOffice のビルドはけっこう遅い部類なので、一晩寝かしておいていいやつがいいでしょうぼくのは Lenovo Thinkpad X121e (CPU: AMD E-350)かなり辛い

Page 7: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

7LibreOffice mini Conference 2014 Tokyo/Japan

ビルド環境の構築

Page 8: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

8LibreOffice mini Conference 2014 Tokyo/Japan

ビルド環境構築手順概観

①Cygwin のインストール

②GNU Make (LibreOffice patched ver.) のインストール

③Java SE Development kit 7 のインストール

④Apache Ant のインストール

⑤Visual Studio Express 2012 for Windows Desktop のインストール

⑥LibreOffice のソースコード取得

Page 9: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

9LibreOffice mini Conference 2014 Tokyo/Japan

①Cygwin のインストール

まずは Cygwin のサイトからインストーラを入手八木さんの資料だと 32/64 どっちでも OK とかいてあったけど私は 64bit でハマったので 32bit (setup-x86.exe) を使いました

64bit OS でも 32bit 版で大丈夫なんだそうです

-P オプションによりパッケージを指定して cmd.exe でインストーラをキックし、 GUI の指示に従う

私は TDF Wiki の内容を踏襲しました

setup-x86.exe -P autoconf -P automake -P bison -P cabextract ^ -P doxygen -P flex -P gcc-g++ -P git -P gnupg ^ -P gperf -P libxml2-devel -P libpng12-devel -P make ^ -P mintty -P openssh -P openssl -P patch -P perl ^ -P perl_vendor -P pkg-config -P python -P readline ^ -P rsync -P unzip -P vim -P wget -P zip

Page 10: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

10LibreOffice mini Conference 2014 Tokyo/Japan

②GNU Make (LibreOffice patched ver.) のインストール

Cygwin が 32bit な人は LibreOffice のサイトに落ちてるのでそれを取ってくる

64bit の人は自分でビルドしてねとかいてあるけどソースが見つけられませんでした(よわよわ……)

これから先のコマンドライン操作は Cygwin Terminal上で行いましょう

mkdir -p /opt/lo/bin cd /opt/lo/binwget http://dev-www.libreoffice.org/bin/cygwin/makewget http://dev-www.libreoffice.org/extern/ccache.exechmod a+x make ccache.exe

Page 11: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

11LibreOffice mini Conference 2014 Tokyo/Japan

③Java SE Development Kit 7 のインストール

必ず 32bit ( x86 )を取ってくること!

公式ダウンロードページ:http://www.oracle.com/technetwork/java/javase/downloads/index.html

だと JDK8 が配布されてるように見えるけど、ちょっと下にスクロールすると JDK7 もあります

取ってきたらインストーラを実行するだけ

Page 12: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

12LibreOffice mini Conference 2014 Tokyo/Japan

③Apache Ant (と JUnit )のインストール

基本公式から取ってきて展開するだけTDF Wiki だと Ant のバージョンが 1.9.3 になってるけど、 2014/06/06 時点だと 1.9.4そこら辺は臨機応変に

JUnit は autoconf のオプションで無効化できるけど、まあ入れておきましょう

mkdir -p /cygdrive/c/sources

cd /cygdrive/c/sourceswget http://www.us.apache.org/dist/ant/binaries/ apache-ant-1.9.4-bin.tar.bz2tar -xjvf apache-ant-1.9.4-bin.tar.bz2wget http://downloads.sourceforge.net/project/junit/junit/ 4.10/junit-4.10.jar

Page 13: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

13LibreOffice mini Conference 2014 Tokyo/Japan

⑤Visual Studio Express 2012 for Windows Deskopのインストール

今の最新は 2013 なので、 2012 はダウンロードセンターから探してきて入れる

http://www.microsoft.com/ja-jp/download/confirmation.aspx?id_34673

このインストーラーは途中でモジュールのダウンロードをじゃんすかやるので、ネットワークが太くないとインストールできません

我が家唯一の N/W であるモバイルルータが超遅かったので最初諦めようかと思ったけど、早朝に速度が改善し間に合いましたなお 2013 だとビルドが途中でコケました。しくしく

TDF 推奨だと 2010 でも OK だけど、こっちは多少苦労するのでおすすめしないとのこと

Page 14: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

14LibreOffice mini Conference 2014 Tokyo/Japan

⑥LibreOffice のソースコード取得

私はあんまり考えずに git リポジトリから取得してしまいました

ハマリ注意!別途 Git を入れたり SourceTree のようなツールを使っている場合、そっちで取ると改行コードの問題でビルドが通らないので、絶対に Cygwin の git コマンドを使いましょう

4.3 ブランチに切り替えておきましょう

cd /cygdrive/c/sources

git clone git://gerrit.libreoffice.org/core libo-corecd libo-core./g checkout --track remotes/origin/libreoffice-4-3

Page 15: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

15LibreOffice mini Conference 2014 Tokyo/Japan

いよいよビルド

Page 16: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

16LibreOffice mini Conference 2014 Tokyo/Japan

基本的な手順

現在の環境その他手動の指定に合わせた autogen というツールで、最適な Makefile というファイルを作る

その Makefile を用いて、ソースコードをビルドする

Page 17: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

17LibreOffice mini Conference 2014 Tokyo/Japan

①まずは autogen の実行

細かなオプションが色々あるのですが、まあ一度ビルド通してみるだけなら TDF Wiki の指定そのままでいいと思います

mkdir -p /cygdrive/c/buildcd /cygdrive/c/build

/cygdrive/c/sources/libo-core/autogen.sh \ --with-external-tar=/cygdrive/c/sources/lo-externalsrc \ --with-junit=/cygdrive/c/sources/junit-4.10.jar \ --with-ant-home=/cygdrive/c/sources/apache-ant-1.9.3 \ --enable-pch --disable-ccache \ --disable-activex --disable-atl

Page 18: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

18LibreOffice mini Conference 2014 Tokyo/Japan

①-2autogen で生成された設定の保存

Linux なんかだとだまっててもうまくいくのですが、 Windows の場合は autogen の結果をキャッシュするファイルを手でコピーする必要があるとか。

ここでエラーが出てないか、 Makefile がちゃんと出来ているかを確認したら、いよいよ Make !

※私はここでうまくいかなくて挫折したので、以降はテキストの引き写しです。しくしく。

mv autogen.lastrun autogen.input

Page 19: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

19LibreOffice mini Conference 2014 Tokyo/Japan

②Make

さっき入れた LibreOffice patched version を使ってMake しましょう

でないとエラーになるよ

ネットワークと通信して色々(ライブラリとかスペルチェック用の辞書とか)取ってくるので、ネット落ちてるとビルド通りません

大変時間がかかるので一晩放置するのが吉

Windows アップデートによる不意のリブートに注意

/opt/lo/bin/make gb_COLOR=1 # make の画面が色付きになってカッコイイ

Page 20: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

20LibreOffice mini Conference 2014 Tokyo/Japan

③試しに実行!

instdir/program/soffice.exe にビルド成果物がある!はず!

単に実行するだけならこれを直接叩けば OK

デバッガ使いたいときは Visual Studio 上げてプロセスアタッチすれば OK !

まあ、ぼくはここまで辿り着かなかったんですがね……。

./instdir/program/soffice.exe

Page 21: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

21LibreOffice mini Conference 2014 Tokyo/Japan

まとめ

Page 22: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

22LibreOffice mini Conference 2014 Tokyo/Japan

私からの教訓

参考文献は穴が開くほど読もう!どちらも超役立つ。神の出来。特に八木さんの資料。TDF Wiki “Windows Build Dependencies”https://wiki.documentfoundation.org/Development/Windows_Build_Dependencies

関西 LibreOffice 勉強会資料 by 八木さん「 LibreOffice を Windows でビルドする」http://www.slideshare.net/tomofumiyagi/libreoffice-buildytmkndshortver

ネットワーク帯域は十分太いものを確保しましょう

あまりギリギリに準備するのはやめましょう (^^;

こまったら ML とかで相談してね!

Page 23: The Basic of How to build LibreOffice / LibreOffice開発版ビルドの基礎 for Windows

23LibreOffice mini Conference 2014 Tokyo/Japan

All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License (unless otherwise specified). "LibreOffice" and "The Document Foundation" are registered trademarks. Their respective logos and icons are subject to international copyright laws. The use of these therefore is subject to the trademark policy.

みなさんも Windows のビルドやろう!

… 私もがんばりまーす!