Presentation is loading. Please wait.

Presentation is loading. Please wait.

LibreOffice開発版のビルドのチュートリアル for Linux/Mac OS X

Similar presentations


Presentation on theme: "LibreOffice開発版のビルドのチュートリアル for Linux/Mac OS X"— Presentation transcript:

1 LibreOffice開発版のビルドのチュートリアル for Linux/Mac OS X
Takeshi Abe LibreOffice mini Conference 2014 Tokyo/Japan

2 LibreOffice mini Conference 2014 Tokyo/Japan
はじめに ハンズオン形式のチュートリアルなので、随時質問してくだ さい 今回の資料(レジュメ)は以下にあります: LibreOffice mini Conference 2014 Tokyo/Japan

3 LibreOffice mini Conference 2014 Tokyo/Japan
自己紹介 安部武志(あべたけし) @fixedpoint_jp The Document Foundationのメンバー Committer LibreOffice日本語チームのメンバー LibreOffice mini Conference 2014 Tokyo/Japan

4 何でLibreOfficeをビルドするの?
コードをハックするスタート地点 UI翻訳に便利 LibreOffice mini Conference 2014 Tokyo/Japan

5 何でLibreOfficeをビルドするの?
コードをハックするスタート地点 UI翻訳に便利 というけれど: 「時間がかかる」 日々masterブランチをビルドしているbotが既にある Tinderbox 翻訳にはプロジェクトが用意してくれるRC版が使える LibreOffice mini Conference 2014 Tokyo/Japan

6 何でLibreOfficeをビルドするの?
逆に考えるんだ! LibreOffice mini Conference 2014 Tokyo/Japan

7 何でLibreOfficeをビルドするの?
逆に考えるんだ! 最新のコードに触れる機会になる/勉強になる LibreOffice mini Conference 2014 Tokyo/Japan

8 何でLibreOfficeをビルドするの?
逆に考えるんだ! 最新のコードに触れる機会になる/勉強になる ビルドだけでも達成感/楽しい LibreOffice mini Conference 2014 Tokyo/Japan

9 何でLibreOfficeをビルドするの?
逆に考えるんだ! 最新のコードに触れる機会になる/勉強になる ビルドだけでも達成感/楽しい あなたのマシンが暖房器具に LibreOffice mini Conference 2014 Tokyo/Japan

10 LibreOffice mini Conference 2014 Tokyo/Japan
今日の目標 機能の追加変更が行われるmasterブランチをビルドする 1時間しかないから、とりあえず make が順調に走り出したら OK そのまま走らせておけば Miniconf 終了時間までにはビルド完 了するかも 目安として、おおよそ2時間から4時間くらいかかる 可能なら、ちょこっと日本語翻訳入れ替えてみよう LibreOffice mini Conference 2014 Tokyo/Japan

11 LibreOfficeはマルチプラットフォーム対応
どのOSのラップトップをお使いですか? Linux どの distro? Mac OS X Snow Leopard Lion Mountain Lion Mavericks LibreOffice mini Conference 2014 Tokyo/Japan

12 LibreOfficeはマルチプラットフォーム対応
Good news Linux 上で LibO をビルドするのは簡単 LibreOffice mini Conference 2014 Tokyo/Japan

13 LibreOfficeはマルチプラットフォーム対応
Good news Linux 上で LibO をビルドするのは簡単 Better news Mac OS X 上で LibO をビルドするのはもっと簡単! LibreOffice mini Conference 2014 Tokyo/Japan

14 LibreOfficeはマルチプラットフォーム対応
Good news Linux 上で LibO をビルドするのは簡単 Better news Mac OS X 上で LibO をビルドするのはもっと簡単! Best news NetBSDについては今日 Onodera さんに教えてもらえる!! Windowsについても、今日小笠原さんが紹介してくれる!! LibreOffice mini Conference 2014 Tokyo/Japan

15 LibreOffice mini Conference 2014 Tokyo/Japan
Mac OS X についての事前の注意 ビルド環境に Homebrew/MacPorts/Fink などのパッケージ管理 ツールでインストールしたプログラム/ライブラリを使うとまず いことが... ビルド中によく分からないエラーが起こることがある 「でもHomebrew/MacPorts/Fink縛りはきつい」 PATH 環境変数に含めず、かつ使いたいプログラムのみ適当な 場所に symbolic link してそちらに PATHを通すといいかも LibreOffice mini Conference 2014 Tokyo/Japan

16 LibreOffice mini Conference 2014 Tokyo/Japan
まずはXcodeを入れよう Linuxの場合 なし! Mac OS Xの場合 必要ならアカウント登録 LibreOffice mini Conference 2014 Tokyo/Japan

17 LibreOffice mini Conference 2014 Tokyo/Japan
次にGit Linuxの場合 # apt-get install git # yum install git Mac OS Xの場合 Mavericks: Xcode の Command Line Tools に含まれている Mountain Lion/Lion/Snow Leopard: インストーラーで入れる: パッケージを入れる: 前述の注意を参考に LibreOffice mini Conference 2014 Tokyo/Japan

18 LibreOffice mini Conference 2014 Tokyo/Japan
次にAutoconfとAutomake Linuxの場合 # apt-get install autoconf automake # yum install autoconf automake Mac OS Xの場合 ソースから入れる: バージョン2.65以上 バージョン1.11以上 パッケージを入れる: (うまくいくか不明) LibreOffice mini Conference 2014 Tokyo/Japan

19 そして、その他の依存するツール/ライブラリ
Linuxの場合 # apt-get build-dep libreoffice # yum-builddep libreoffice Mac OS Xの場合 Mavericks/Mountain Lion/Lion なし! Snow Leopard touch(1)のために coreutils を入れる: バージョン8.13以上 LibreOffice mini Conference 2014 Tokyo/Japan

20 LibreOfficeのGitレポジトリをcloneしよう
$ cd (お好きなディレクトリ) $ git clone git://gerrit.libreoffice.org/core $ cd core ちょっと core の中身を見てみよう 100個以上のサブディレクトリ その大部分は"module"というコードの単位 LibreOffice mini Conference 2014 Tokyo/Japan

21 ここまでくれば、もうほとんど出来たようなもの!
あとは、好みに合わせてカスタマイズしよう LibreOffice mini Conference 2014 Tokyo/Japan

22 LibreOffice mini Conference 2014 Tokyo/Japan
./autogen.sh しよう 内部で configure を呼び出すスクリプト でもちょっと待って: いろんなオプションがあります LibreOffice mini Conference 2014 Tokyo/Japan

23 configure(autogen.sh)の基本的なオプション
--help 読んでおくと発見があるかも --prefix installしなくても良くなったためあまり使ってない LibreOffice mini Conference 2014 Tokyo/Japan

24 configure(autogen.sh)の便利なオプション
「日本語翻訳確認したい」 --with-lang=ALL または --with-lang=’en-US ja de’ のように言語を指定 「ヘルプも入れたい」 --with-help LibreOffice mini Conference 2014 Tokyo/Japan

25 configure(autogen.sh)の短気な人向けオプション
「APIドキュメントは生成しなくていい」 --without-doxygen 「Javaなんかいらないよね」 --without-java

26 configure(autogen.sh)のデバッグ用オプション
--enable-debug おすすめ --enable-dbgutil --enable-debugに加えて他のデバッグ情報も含める --enable-symbols デバッグシンボルのみ追加 --enable-dbgutil/--enable-debugとは排他的 --enable-verbose --enable-werror LibreOffice mini Conference 2014 Tokyo/Japan

27 Mac OS X向けconfigure(autogen.sh)オプション
「私のマシンRetinaなんだけど」 いいね! --enable-macosx-retina を追加しよう 「それに他にもMacたくさん持ってるから、いろんなネコ科と Mavericksで動かしたい」 うらやましいね! --with-macosx-sdk / --with-macosx-version-min-required / --with- macosx-version-max-allowed を確認してね

28 LibreOffice mini Conference 2014 Tokyo/Japan
./autogen.sh 実行! うまくいかなかったら質問してください。 LibreOffice mini Conference 2014 Tokyo/Japan

29 LibreOffice mini Conference 2014 Tokyo/Japan
ついに make 基本的に $ make で全部やってくれる 実行すると、最初は関連するサードパーティのソースコード をダウンロードしだす $ make fetch でやることと同じ インターネット接続が必要 --with-lang を指定した場合はさらに translations submodule を clone する 隠し(?)ターゲットもある LibreOffice mini Conference 2014 Tokyo/Japan

30 LibreOffice mini Conference 2014 Tokyo/Japan
make 実行! うまくいかなかったら質問してください。 LibreOffice mini Conference 2014 Tokyo/Japan

31 LibreOffice mini Conference 2014 Tokyo/Japan
うまくいかない? 「ディスクスペースが足らないみたい」 ビルド中は一時ファイルが大量に生成される 環境変数 TMPDIR を指定しておくといいかも LibreOffice mini Conference 2014 Tokyo/Japan

32 LibreOffice mini Conference 2014 Tokyo/Japan
うまくいかない?(一般論) 「何か途中でこけるんですけど」 masterブランチが更新されているかも; $ git pull –rebase してね 「やっぱり何かこけるんですけど」 $ make clean or $ make distclean してからやり直してね 「それでもこけるんですけど!」 master ブランチ、誰かビルド壊したかも; 大抵半日以内で直るから、ちょっと待ってね LibreOffice mini Conference 2014 Tokyo/Japan

33 LibreOffice mini Conference 2014 Tokyo/Japan
うまくいったら、動かしてみよう Linuxの場合 $ ./instdir/program/soffice Mac OS Xの場合 $ open ./instdir/LibreOfficeDev.app LibreOffice mini Conference 2014 Tokyo/Japan

34 LibreOffice mini Conference 2014 Tokyo/Japan
ビルド中... その間に、いくつかヒントを LibreOffice mini Conference 2014 Tokyo/Japan

35 LibreOffice mini Conference 2014 Tokyo/Japan
makeのmoduleごとのターゲット (module名) 例: $ make sw 特定のmoduleのみをビルドしてくれる (module名).all 例: $ make sc.all 特定のmoduleと、それが依存するmoduleたちをビルドしてく れる moduleごとのテストも実行 (module名).clean moduleごとの生成物の削除 LibreOffice mini Conference 2014 Tokyo/Japan

36 LibreOffice mini Conference 2014 Tokyo/Japan
makeの隠し(?)ターゲット dump-deps / dump-deps-png Graphvizでmoduleの依存関係を図にしてくれる LibreOffice mini Conference 2014 Tokyo/Japan

37 ビルドについて素晴らしい資料がたくさんあります。
参考 ビルドについて素晴らしい資料がたくさんあります。 LibreOffice mini Conference 2014 Tokyo/Japan

38 LibreOffice mini Conference 2014 Tokyo/Japan
ドキュメンテーション TDF Wiki から辿れるところに各環境でのビルドが説明されています LibreOffice: Hermenutical keys to a complex code-base by Michael Meeks structure.pdf LibreOffice mini Conference 2014 Tokyo/Japan

39 LibreOffice mini Conference 2014 Tokyo/Japan
日本語での資料 Linuxでのビルドについて 「Linux環境でLibreOfficeをビルドしてみようかね」 by 小笠原 さん Mac OS Xでのビルドについて 「Mac OS XでのLibreOfficeビルド報告(Ver.2)」 by testnoda さん LibreOffice mini Conference 2014 Tokyo/Japan

40 LibreOffice mini Conference 2014 Tokyo/Japan
ありがとうございました。 参加いただいた皆さまに感謝 日本語チームの方々、特にMiniconf 企画準備に尽力 していただいた大森さんと小笠原さんに感謝 LibreOffice mini Conference 2014 Tokyo/Japan


Download ppt "LibreOffice開発版のビルドのチュートリアル for Linux/Mac OS X"

Similar presentations


Ads by Google