[ make、実行方法について ]


* 動作環境

  必須環境

  ・gtkmm-2.18.0 以上 ( 2.24未満のサポートは将来のリリースで廃止される )
  ・gtkmm-3.0.0 以上 (GTK3版)
  ・zlib-1.2 以上
  ・gnutls-2.12 以上 ( 3.3.29未満のサポートは将来のリリースで廃止される )

  推奨環境

  ・Linux Kernel 2.6以上 ( 3.10未満は将来のリリースで推奨環境から外れる )
  ・gtkmm-2.24.0 以上
  ・gtkmm-3.18.0 以上
  ・UTF-8環境 ( EUC環境では LANG="ja_JP.UTF-8" を指定する必要がある )

* makeに必要なツール、ライブラリ

  必須

  ・autoconf
  ・automake
  ・g++ (C++11 mode)
  ・gnutls
  ・gtkmm
  ・libtool
  ・make
  ・zlib

  オプション

  ・alsa-lib (--with-alsa)
  ・libgnomeui (--with-sessionlib=gnomeui) (GTK2版、廃止予定)
  ・openssl (--with-tls=openssl)
  ・oniguruma (--with-regex=oniguruma)
  ・libpcre (--with-regex=pcre)
  ・migemo (--with-migemo)

  OSやディストリビューション別の解説は"OS/ディストリビューション別インストール方法 [https://ja.osdn.net/projects/jd4linux/wiki/OS%2f%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E5%88%A5%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%96%B9%E6%B3%95]"(wiki) を参照。

* make 方法( rpmbuild の場合 )

    1. rpmbuild -tb 〜.tgz でrpmファイルが出来るのであとは rpm -Uvh 〜.rpm
    2. ライブラリが足りないといわれたら yum install 〜-devel
    3. 起動はメニューから起動するか、端末で jdim と打ち込んでエンターを押す。

* make 方法( configure + make の場合 )

    1. autoreconf -i ( 又は ./autogen.sh )
    2. ./configure
    3. make
    4. (お好みで) strip src/jdim

* configureオプション

    --with-sessionlib=[xsmp|gnomeui|no]

       XSMP を使ってセッション管理をするには「xsmp」を、セッション管理を無効にするには「no」を選択する。
       デフォルトでは XSMP を使用する。「gnomeui」はGTK2版のみ利用できる。
       --with-sessionlib=gnomeui は非推奨: かわりに --with-sessionlib=xsmp を使用してください。

    --with-pangolayout

       描画にPangoLayoutを使う。デフォルトでは PangoGlyphString を使用する。

    --with-migemo

       migemoによる検索が有効になる。migemoがUTF-8の辞書でインストールされている必要がある。

    --with-native

       CPUに合わせた最適化
       CPUを指定する場合は ./configure CXXFLAGS="-march=ARCH" を利用してください。

    --with-tls=[gnutls|openssl]

       使用するSSL/TLSライブラリを設定する。デフォルトでは GnuTLS を使用する。

    --with-tls=openssl

       GnuTLS のかわりに OpenSSL を使用する。ライセンス上バイナリ配布が出来なくなることに注意すること。

    --with-openssl

       非推奨: かわりに --with-tls=openssl を使用してください。

    --with-alsa

       ALSAによる効果音再生機能を有効にする。詳しくは"https://jdimproved.github.io/JDim/"の項を参照すること。

    --with-xdgopen

       デフォルトブラウザとしてxdg-openを使用する。

    --enable-gprof

       gprofによるプロファイリングを行う。コンパイルオプションに -pg が付き、JDimを実行すると
       gmon.out が出来るのでgprof./jdgmon.out で解析できる。CPUの最適化は効かなくなるので注意する。

    --with-regex=[posix|oniguruma|pcre]

       使用する正規表現ライブラリを設定する。デフォルトでは POSIX regex を使用する。

    --with-regex=oniguruma

       POSIX regex のかわりに鬼車を使用する。
       鬼車はBSDライセンスなのでJDimをバイナリ配布する場合には注意すること(ライセンスはGPLになる)。

    --with-regex=pcre

       POSIX regex のかわりに PCRE を使用する。
       PCREはBSDライセンスなのでJDimをバイナリ配布する場合には注意すること(ライセンスはGPLになる)。
       UTF-8が有効な ( --enable-utf オプションを用いて make する ) PCRE 6.5 以降が必要となる。
       Perl互換の正規表現なので、従来の POSIX 拡張の正規表現から設定変更が必要になる場合がある。

    --with-oniguruma

       非推奨: かわりに --with-regex=oniguruma を使用してください。

    --with-pcre

       非推奨: かわりに --with-regex=pcre を使用してください。

    --with-thread=[posix|glib|std]

       使用するスレッドライブラリを設定する。デフォルトでは pthread を使用する。

    --with-thread=glib

       非推奨: かわりに --with-thread=std を使用してください。

    --with-thread=std

       pthread のかわりに std::thread を使用する。

    --with-[gthread|stdthread]

       非推奨: かわりに --with-thread=[glib|std] を使用してください。

    --with-gtkmm3

       gtkmm2のかわりにgtkmm3を使用する。

    --disable-compat-cache-dir

       JDのキャッシュディレクトリ ~/.jd を読み込む互換機能を無効化する。

* メモ

  最近のディストリビューションの場合は autogen.sh よりも autoreconf -i の方を推奨。

  実行するには直接 src/jdim を起動するか手動で /usr/bin あたりに src/jdim を cp する。

  以上の操作でmakeが通らなかったり動作が変な時は configure のオプションを変更する。
