../

Linuxでのbuild

Ubuntu18での場合。

必要なソフトウェア・ライブラリ類のインストール

  • xulrunner SDK

以上以外は、すべてなるべくapt-getでinstallするようにする。

xulrunner SDK

xulrunner-39.0 SDKをここから取ってくる

proj64以下に展開する。 xulrunner-sdk以下に展開される。

apt-getによる必要ライブラリのインストール

以下のコマンドを実行すればOK

 sudo apt-get install -y ssh build-essential cmake unzip curl wget
 sudo apt-get install -y git g++ gcc make openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev bzip2
 sudo apt-get install -y bison flex
 sudo apt-get install -y autoconf libtool automake python3-dev
 sudo apt-get install -y liblzma-dev liblcms2-dev libfftw3-dev libcgal-dev libboost-all-dev
 sudo apt-get install libgtk2.0-dev
 sudo apt-get install libglew-dev

Repositoryからチェックアウト

MacOSXの場合と同様.すなわち,

  • Anonymous (http)
     git clone https://github.com/CueMol/cuemol2.git cuemol2
  • 特定ユーザー (ssh)
     git clone git@github.com:CueMol/cuemol2.git cuemol2

以下では~/proj/cuemol2以下にcheckoutしたとする.

configureスクリプトの実行とbuild

以下buildは,~/proj/cuemol2/uxbuildにて行うのでcdで移動.

configureを走らせるためのスクリプトrun_config_local_lxgui.shを作成。

#!/bin/sh

cwd=`pwd`
top_srcdir=$cwd/../src/
install_dir=$top_srcdir/xul_gui/

debug="--disable-debug --enable-m64"

usepybr="--with-python"
usexrbr="--without-xmlrpc"

lcms="--with-lcms"
xz="--with-xz"

gecko_sdk_dir=$HOME/proj64/xulrunner-sdk

#######################

config_scr=../src/configure

if test ! -f $config_scr; then
    (
        cd ../src
        aclocal; libtoolize; aclocal; autoheader; automake -a; autoconf;
        cd js
        aclocal; libtoolize; aclocal; autoheader; automake -a; autoconf;
    )
fi

env PYTHON=python3 CC=gcc CXX=g++ CXXFLAGS="-std=c++0x -O" \
$config_scr \
--disable-static \
--enable-shared \
--prefix=$install_dir \
--with-xulrunner-sdk=$gecko_sdk_dir \
$lcms \
$xz \
$usepybr \
$usexrbr \
--with-boost \
--with-fftw \
--with-cgal \
--enable-cgal-gmp \
--with-glew \
$debug
  • python3をinterpreterとして組み込んでいる。不要な場合は、
    usepybr="--without-python"
    に変更
  • 一方python3を使う場合は、version 3.6を開発環境とともにinstallする必要がある。

エラー無くconfigureスクリプトが生成され,さらにMakefileが生成されたら,makeコマンドを実行.buildが行われる.

試し実行

make installを行うと,~/proj/cuemol2/xul_gui以下に必要なファイル類が配置される.xulrunnerの引数に,~/proj/cuemol2/xul_gui/application.iniを与えて起動すれば動くはず.

~/src/xulrunner/xulrunner-sdk/bin/xulrunner ~/proj/cuemol2/xul_gui/application.ini

うまくはしらない場合は,MacOSXの場合と同様

 setenv NSPR_LOG_MODULES linker:5

を使うこともできるが,あまり有用な情報は出ない模様. 一方,ld.soの設定LD_DEBUGをつかって

 setenv LD_DEBUG libs

とすると,どのsymbolがみつからなくてどのsoのloadがコケたか詳しく出てくる.

インストールパッケージの生成

/proj/cuemol2/uxbuild/uxdistに移動し、make distを実行するとインストールパッケージ(tar.bz2形式)が作られる。

 cd uxdist
 make dist

できるファイルは、CueMol2-<version>-Linux-Intel64.tar.bz2になる。 このパッケージ中のbin/cuemol2を実行すると起動する。


Last-modified: Thu, 09 May 2019 21:40:06 JST (460d)